试图从我的本地服务器访问数据库
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.
的身份验证令牌
我想使用他们的 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.