试图从我的本地服务器访问数据库

Trying to access database from my local server

我想使用他们的 REST 从 Zoho Creator 访问数据库 API (https://www.zoho.com/creator/help/api/rest-api/rest-api-add-records.html) 我读到我不能从客户端做到这一点(因为 CORS 没有实现或类似的东西) 而且我必须从服务器上进行。

所以我使用 django 设置了一个本地服务器,并且我 运行 来自终端的脚本应该向我的 zoho 数据库添加一条记录,但是它不起作用...

我不确定是脚本有误还是我使用服务器的方式有误。

服务器是django的运行,我用命令"django-admin startproject mysite"做了一个简单的服务器,运行服务器用"python manage.py runserver".

应用程序的名称是 "synonyms-database",表单是 "Main_Form",唯一的字段是 "name"。因此,根据这些信息,我遵循了 API 说明,这是我的脚本:

import requests

payload = {'authtoken': myAPIToken, 'scope': 'creatorapi', 'name': 'test'}
response = requests.request('POST', 
'https://creator.zoho.com/api/erik341/json/synonyms- 
database/form/Main_Form/record/add/', json=payload)

print(response.headers)
print(response.text)
print(response.url)

我得到了这样的回复:

<body>
    <div>
        An error has occurred. It has been reported to Zoho Creator 
        support. We will look into this issue .<br> Sorry for the 
        inconvenience caused.
        <p><p>
        Go to <a href='%2F'>Home</a>
    </div>
</body>

如果我使用 data=payload 而不是 json=payload,则响应更改为:

{"code":2945,"message":"INVALID_TICKET"}

API 需要 form-encoded 数据,因此您应该使用 data=payload 而不是 json=payload。 URL中的json是响应格式,不是请求格式。

您可以通过重新生成令牌来解决 INVALID_TICKET 错误。 this post 上有一条评论,通过将 URL 从 .eu 更改为 .com 解决了错误。确保您在 URL 上生成符合您的请求 URL.

的身份验证令牌