我正在尝试将Parse服务器迁移到Debian服务器,但我遇到了REST-API的问题。当我尝试调用应用程序的登录功能时,收到以下错误:Cannot POST /parse/login
。
这些是我在收到服务器错误之前成功遵循的步骤。
main.js
。curl -H "X-Parse-Application-Id: <id1>" -H "Content-Type: application/json" -d '{}' 'serverName/parse/functions/login'
成功通话。Cannot POST /parse/login
错误。我用curl -H "X-Parse-Application-Id: <id1>" -H "Content-Type: application/json" -d '{}' 'serverName/parse/login'
This是我遵循的迁移指南 This是我遵循的REST-API指南。
有人可以帮我解决此服务器错误吗?
答案 0 :(得分:1)
正确。登录需要GET
方法而不是POST
!
通过对GET
执行简单URL
,您应该会看到以下错误。显然你需要通过你的参数才能使它成功。
{
"code": 200,
"error": "username is required."
}
删除-d '{}'
会将curl
还原为GET
答案 1 :(得分:1)
这个答案是我能用所提供信息做的最佳照片。问题很可能是应用程序期望GET
请求(或除POST
之外的其他一些HTTP方法),但您的curl请求会发送POST
请求。
要查看curl
发送的内容,您可以添加-v
(我输入example.com
只是为了让服务器响应)
$ curl -v -H "X-Parse-Application-Id: <id1>" -H "Content-Type: application/json" -d '{}' 'example.com/serverName/parse/login'
* Trying 2606:2800:220:1:248:1893:25c8:1946...
* TCP_NODELAY set
* Connected to example.com (2606:2800:220:1:248:1893:25c8:1946) port 80 (#0)
> POST /serverName/parse/login HTTP/1.1
> Host: example.com
> User-Agent: curl/7.51.0
> Accept: */*
> X-Parse-Application-Id: <id1>
> Content-Type: application/json
> Content-Length: 2
login function in the API guide需要GET
请求:
为此,请使用用户名和密码作为URL编码参数向/ 1 / login端点发送GET请求:
我认为迁移时您还升级到较新的parse.com
应用,旧版本接受POST
而新版本则不接受。{/ p>
您需要更改curl请求才能使用GET
而不是POST
。只需关注the example provided即可。删除-d
参数并添加--data-urlencode
参数