【问题标题】:Call Parse.com REST services from Google App Engine从 Google App Engine 调用 Parse.com REST 服务
【发布时间】:2014-08-25 05:45:25
【问题描述】:

我在 Parse.com 云中创建了一个数据库。我现在需要在我的 Google App Engine 应用程序中编写一个 Servlet 来调用 Parse 上的 REST 服务。 REST 服务需要 用户身份验证,即 Parse 应用程序 ID 和 Javascript 密钥。

...
            URL url = new URL("https://api.parse.com/1/classes/OBJECT");
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setRequestProperty("Content-Type", "application/json");

            Base64 enc = new Base64();
            String userpassword = "{PARSE_APP_ID}" + ":" + "javascript-key={PARSE_JS_KEY}";
            String encodedAuthorization = enc.encodeBase64String(userpassword.getBytes());
            connection.setRequestProperty("Authorization", "Basic " + encodedAuthorization);
            connection.setRequestMethod("GET");
...

我使用 org.apache.commons.codec.binary.Base64 进行编码以使 REST 调用经过身份验证。

Parse.com REST API 建议使用以下请求格式进行 HTTP 调用:

https://myAppID:javascript-key=myJavaScriptKey@api.parse.com/1/classes/GameScore/Ed1nuqPvcm

问题是我一直在得到

{"错误":"未授权"}

有没有人有调用经过身份验证的 REST 服务的经验?谢谢!

编辑。

URL url = new URL("https://api.parse.com/1/classes/OBJECT");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("X-Parse-Application-Id", "{APP_ID}");
connection.setRequestProperty("X-Parse-REST-API-Key", "REST_ID");
connection.setRequestProperty("Content-Type", "application/json");

当 responseCode 为“200”时,我仍然遇到同样的错误。

干杯,

【问题讨论】:

    标签: google-app-engine rest servlets parse-platform httpurlconnection


    【解决方案1】:

    改用身份验证的标头版本:

    connection.setRequestProperty("X-Parse-Application-Id", "app id here");
    connection.setRequestProperty("X-Parse-REST-API-Key", "rest key here");
    

    【讨论】:

    • 感谢您的回复。但是我在进行更改后仍然遇到同样的错误。
    • 您确定您使用的是正确的应用程序 ID 和休息键吗?未经授权的消息另有说明。
    • 是的,我确定 APP ID 和 REST API KEY 都是正确的。我支持公司代理。但这无关紧要,因为我可以从 Parse.com 获得回复,不是吗?
    • 是的,我可以从网络的 CURL 请求中得到正确的结果。它给了我一个 JSON 结果。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-13
    • 2012-08-27
    • 1970-01-01
    • 2012-09-02
    • 1970-01-01
    相关资源
    最近更新 更多