2016-03-18 46 views
0

我配置我的解析服務器如下:解析服務器:REST的API密鑰認證不起作用

var api = new ParseServer({ 
    databaseURI: databaseUri || 'mongodb://localhost:27017/dev', 
    cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js', 
    appId: process.env.APP_ID || 'XXXXXXXXXXXXXXX', 
    clientKey: process.env.CLIENT_KEY || 'XXXXXXXXXXXXXXX', 
    restAPIKey: process.env.RESTAPI_KEY || 'XXXXXXXXXXXXXXX', 
    masterKey: process.env.MASTER_KEY || 'XXXXXXXXXXXXXXX', //Add your master key here. Keep it secret! 

    ... 

    serverURL: process.env.SERVER_URL || 'https://myserver.com:1337' // Don't forget to change to https if needed 
}); 

發送推送消息的主鍵指定作品:

curl -X POST \ 
    -H "X-Parse-Application-Id: XXXXXXXXXXXXXXX" \ 
    -H "X-Parse-Master-Key: XXXXXXXXXXXXXXX" \ 
    -H "Content-Type: application/json" \ 
    -d '{ 
     "where": { 
      "deviceType": { 
      "$in": [ 
       "ios" 
      ] 
      } 
     }, 
     "data": { 
      "title": "The Shining", 
      "alert": "All work and no play makes Jack a dull boy." 
     } 
     }'\ https://myserver.com/parse/push 

但是,如果我只提供其餘的API密鑰,它不起作用。

curl -X POST \ 
    -H "X-Parse-Application-Id: XXXXXXXXXXXXXXX" \ 
    -H "X-Parse-REST-API-Key": XXXXXXXXXXXXXXX \ 
    -H "Content-Type: application/json" \ 
    -d '{ 
     "where": { 
      "deviceType": { 
      "$in": [ 
       "ios" 
      ] 
      } 
     }, 
     "data": { 
      "title": "The Shining", 
      "alert": "All work and no play makes Jack a dull boy." 
     } 
     }'\ https://myserver.com/parse/push 

我的服務器配置有什麼問題?我認爲只要我定義它,它應該與其他API密鑰一起工作?

回答

1

您可以從配置中刪除RESTAPI密鑰,因爲它不是必需的,此時您必須使用Master密鑰發送推送通知。您可以定義雲碼功能,你會從REST運行,所以你不會有通過網絡發送的主密鑰Answer on Github

1

你必須設法/班/

HTTP 小號://myserver.com/parse/ /推

請求此URL,並不要錯過添加

  • 「X-解析,應用ID:XXXXXXXXXXXXXXX」
  • 「X-語法分析主密鑰:XXXXXXXXXXXXXXX」
  • 「內容類型:應用程序/ JSON」

頁眉和檢查,如果你重新使用HTTP或HTTPS。

+0

*類*它的工作原理。謝謝 –