You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用AzureStor与AzureRMR API时出现base64_decode错误求助

解决AzureStor操作中openssl::base64_decode认证错误问题

你遇到的openssl::base64_decode: check failed: (is.character(text))错误,本质是AzureStor在解析认证令牌时出现异常,和AzureRMR登录对象的传递方式有关,以下是几种可行的解决方法:

  • 改用AzureStor内置的认证方式
    AzureStor提供了独立的认证接口,避免和AzureRMR的对象交互出现兼容性问题:

    # 直接创建存储账户对象(会自动弹出登录窗口)
    storage_account <- create_storage_account("accountname")
    container <- storage_container(storage_account, "container")
    storage_upload(container, src = file_path, dest = folder_path)
    

    或者手动从AzureRMR获取存储服务专用的令牌:

    # 获取针对Azure存储服务的访问令牌
    token <- az$get_token("https://storage.azure.com/")
    storage_account <- storage_endpoint("https://accountname.blob.core.windows.net", token = token)
    container <- storage_container(storage_account, "container")
    storage_upload(container, src = file_path, dest = folder_path)
    
  • 检查并更新包版本
    旧版本的AzureRMR和AzureStor可能存在认证交互bug,先确认版本:

    packageVersion("AzureRMR")
    packageVersion("AzureStor")
    

    如果版本不是最新,执行更新:

    update.packages(c("AzureRMR", "AzureStor"))
    
  • 验证资源信息与权限

    • 确认存储账户名称(accountname)是全小写,且容器名称(container)拼写完全正确,Azure存储资源名称对大小写敏感。
    • 确保登录的Azure账号拥有该容器的Blob数据参与者或更高权限,权限不足可能导致令牌解析异常。
  • 清理认证缓存
    缓存的旧令牌可能干扰新会话,清理后重新登录:

    AzureRMR::clean_token_cache()
    az <- AzureRMR::create_azure_login()
    

内容的提问来源于stack exchange,提问作者bobryash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 11:12:16