2016-05-18 102 views
1

在Parse.com REST API documentation它這樣說:如何在Parse.com REST API使用客戶端密鑰,而不是REST API密鑰的Android請求

你不應該使用在客戶端應用程序的REST API密鑰(即您分發給您的客戶的代碼)。如果Parse SDK可用於您的客戶端平臺,我們建議使用我們的SDK而不是REST API。如果您必須直接從客戶端調用REST API,則應該爲該平臺使用相應的客戶端解析密鑰(例如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密鑰不推薦使用。建議使用Android的客戶端密鑰。如果我使用Client密鑰進行身份驗證,標題應該如何顯示?有沒有客戶端應用程序使用客戶端密鑰而不是Rest API鍵的例子?

回答

0

簡短回答:在您的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密鑰parse-push-plugin。在預感上,我搜索了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";