我不明白我要把什么“版本”v作为d的格式

2024-05-28 19:24:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用FOURSQUARE API提取场地搜索。我已经创建了一个带有我的客户端id和客户端密码的URL。但我不知道我需要写什么版本日期

enter image description here

请检查图像中的错误。我在网上查过,但不太明白。任何帮助都将不胜感激


Tags: 图像版本apiidurl密码客户端错误
1条回答
网友
1楼 · 发布于 2024-05-28 19:24:31

首先:

转到立即撤消并重新生成您的令牌,因为您刚刚将其发布到internet

您的URL仅包含3个格式变量(计算格式字符串中的{}字符)

您尝试将4个变量填充到包含3个孔的格式字符串中

.format(
    venue_id, # gets placed in the url after client_id=
    CLIENT_ID,  # gets placed after client_secret=
    CLIENT_SECRET, # placed after v=
    VERSION  # placed nowhere because you don't have a 4th {} in the string.
)

您看到的错误结果显示您的客户端密码是无效版本

您发布客户端密钥可能违反了它们的TOS,这就是您应该撤销和重新生成的原因

建议

使用命名格式字符串

如果您使用了命名字符串,那么您将减少犯这种错误的机会,因为如果没有传入所需的名称,您将得到一个错误,如果传入额外的名称,没有问题,但是您不会得到这个配置移位错误

url = "https://<stuff>/client_id={client_id}&client_secret={client_secret}&v={version}".format(
    client_id=CLIENT_ID,
    client_secret=CLIENT_SECRET,
    version=VERSION
)

或速记格式字符串,其中格式字符串中的变量是程序中的命名变量

url = f"https://<stuff>/client_id={CLIENT_ID}&client_secret={CLIENT_SECRET}&v={VERSION}"
#     ^
#  -| # f indicates this is an inline format string

相关问题 更多 >

    热门问题