开发者

Google Places API: Adding a new Place: Java/Groovy

Can't get the POST working? What's wrong?

Note: This works for a GET with autocomplete GET works without signing the url

  1. I'm following the Web services steps to Sign the URL with my "API Key" Docs say"client id" still? http://code.google.com/apis/maps/documentation/webservices/

2.Try sending the POST data with the signed URL (tried the unsigned signature aswell)

def signedUrl = "https://maps.googleapis.com/maps/api/place/add/json?key=xxxxxkeyxxxxxx&sensor=false&signature=xxxxxxxxxxsignaturexxxxxx"

    String postData = "{'location': { 'lat': '-33.8669710','lng': '151.1958750'},'accuracy': '50','name': 'Google Shoes!'}"

    URL urlPost = new URL(signedUrl);
    URLConnection connection = urlPost.openConnection();
    connection.addRequestProperty("Referer", "http://www.mysite.com");

    connection.setDoOutput(true);
    connection.setRequestMethod("POST");
    connection.setRequestProperty("CONTENT-TYPE", "text/json");
    connection.setRequestProperty("CONTENT-LENGTH", postData.length() + "");
    OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream());
    out.write(postData);
    out.close();

    String line;
    StringBuilder builder = new StringBuilder();
    BufferedReader reader = new BufferedReader(new InputStr开发者_如何学运维eamReader(connection.getInputStream()));
    while((line = reader.readLine()) != null) {
         builder.append(line);
    }

    JSONObject json = new JSONObject(builder.toString());
       println json

Returns a 403 "java.io.IOException: Server returned HTTP response code: 403 for URL:"

Simular to the "Java Access"section under they give an example of a GET http://code.google.com/apis/websearch/docs/#fonje


Ok solved.

No signing the URL required

postData string was wrong should have been

String postData = "{\"location\": { \"lat\": -33.8669710,\"lng\": 151.1958750},\"accuracy\": 50,\"name\": \"Google Shoes!\", \"types\":[\"bar\"]}"
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜