如何在Parse.com Rest Api请求上使用客户端密钥而不是Android的Rest Api-Key



在Parse.com Rest API文档中,它这样说:

您不应在客户端应用程序(即您分发给客户的代码)中使用REST API密钥。如果Parse SDK可用于您的客户端平台,我们建议使用我们的SDK,而不是REST API。如果必须直接从客户端调用REST API,则应使用该平台对应的客户端Parse密钥(例如,iOS/Android的客户端密钥或Windows/Xamarin/Unity的.NET密钥)。

在我的改装api中,我有以下带有标题的代码:

  @Headers({"X-Parse-Application-Id: " + ParseEndPointConfig.PARSE_APPLICATION_ID, "X-Parse-REST-API-Key: " + ParseEndPointConfig.PARSE_CLIENT_KEY})
  @POST("classes/Xxx")
  Observable<XxxParseObject> createXxx(@Body XxxParseObject circle);

如文档中所述,不建议使用Rest Api Key。建议使用Android的客户端密钥。如果我使用客户端密钥进行身份验证,标头应该是什么样子?对于客户端应用程序,是否有使用客户端密钥而不是Rest-Api密钥的示例?

简短回答:在REST调用中使用头X-Parse-Client-Key

完整解释:当你查看解析REST文档时,你经常会看到这样的例子:

curl -X POST 
  -H "X-Parse-Application-Id: ${APPLICATION_ID}" 
  -H "X-Parse-REST-API-Key: ${REST_API_KEY}" 
  -H "Content-Type: application/json" 
  -d '{"score":1337,"playerName":"Sean Plott","cheatMode":false}' 
  https://api.parse.com/1/classes/GameScore

请注意解析标头是如何以X-Parse-开头的。我之前需要弄清楚如何使用dotNET密钥来解析推送插件。凭直觉,我在dotNET SDK中搜索了X-Parse-,发现标题是X-Parse-Windows-Key

使用Java SDK执行同样的操作,您会在ParseRESTCommand.java 中找到以下声明

static final String HEADER_APPLICATION_ID = "X-Parse-Application-Id";
static final String HEADER_CLIENT_KEY = "X-Parse-Client-Key";

相关内容

最新更新