【问题标题】:Cloudinary error: "please access via api-eu.cloudinary.com"Cloudinary 错误:“请通过 api-eu.cloudinary.com 访问”
【发布时间】:2020-02-21 00:28:17
【问题描述】:

当我尝试通过 Python 将图像上传到 Cloudinary 时:

import cloudinary.uploader

cloudinary.config(
  cloud_name = 'our-name-eu',
  api_key = '…',
  api_secret = '…',
  private_cdn = True,
  secure_distribution = 'our-name-eu-res.cloudinary.com'
)
cloudinary.uploader.upload("https://i.ytimg.com/vi/2fb-g_V-UT4/hqdefault.jpg")

然后我得到以下错误:

Error: Cloud our-name-eu belongs to eu geo, please access via api-eu.cloudinary.com

虽然I see in the docs of the API API URL 的结构类似于https://api.cloudinary.com/v1_1/<cloud name>/<resource_type>/upload,但我想我可以用api-eu 替换api,但我不知道如何在Python 模块中指定它。

我正在使用 Python 3.7.2 和来自 pipcloudinary 包。

【问题讨论】:

标签: python python-3.x cloudinary


【解决方案1】:

看着the source code

def cloudinary_api_url(action='upload', **options):
    cloudinary_prefix = options.get("upload_prefix", cloudinary.config().upload_prefix)\
                        or "https://api.cloudinary.com"
    cloud_name = options.get("cloud_name", cloudinary.config().cloud_name)
    if not cloud_name:
        raise ValueError("Must supply cloud_name")
    resource_type = options.get("resource_type", "image")

    return encode_unicode_url("/".join([cloudinary_prefix, "v1_1", cloud_name, resource_type, action]))

好像相关的配置键是upload_prefix

作为参考,我通过在其 repo 中的 Python 文件中搜索默认值找到了这一点:https://github.com/cloudinary/pycloudinary/search?l=Python&q=api.cloudinary.com

【讨论】:

    猜你喜欢
    • 2019-11-11
    • 1970-01-01
    • 2018-10-02
    • 1970-01-01
    • 1970-01-01
    • 2016-10-30
    • 2021-06-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多