Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google translator toolkit API-禁止Google API java客户端登录403_Java_Google Data Api_Google Translator Toolkit - Fatal编程技术网

Google translator toolkit API-禁止Google API java客户端登录403

Google translator toolkit API-禁止Google API java客户端登录403,java,google-data-api,google-translator-toolkit,Java,Google Data Api,Google Translator Toolkit,我刚刚使用GoogleAPI java客户端库实现了GoogleTranslatorToolkitAPI。 问题是,我可以使用旧的“gdata”客户端库使用clientLogin进行身份验证,但我无法使用GoogleAPI java客户端进行身份验证 这很简单,但我仍然收到403封禁回复。请求(旧/新)几乎相同,但只有身份验证令牌不同。谷歌只是给我发了一个我无法验证的令牌 请任何人帮忙,我花了一个小时完成整个模型的实现,然后又花了3个小时 public class GttClient { pu

我刚刚使用GoogleAPI java客户端库实现了GoogleTranslatorToolkitAPI。 问题是,我可以使用旧的“gdata”客户端库使用clientLogin进行身份验证,但我无法使用GoogleAPI java客户端进行身份验证

这很简单,但我仍然收到403封禁回复。请求(旧/新)几乎相同,但只有身份验证令牌不同。谷歌只是给我发了一个我无法验证的令牌

请任何人帮忙,我花了一个小时完成整个模型的实现,然后又花了3个小时

public class GttClient {
 public static void main(String[] args) {

  Debug.enableLogging();
  HttpTransport transport = setUpTransport();

  try {
   authenticateWithClientLogin(transport);
   printResults(executeGet(transport, GttUrl.forDocuments()));
  } catch (IOException e) {
   e.printStackTrace();
  }
 }

 private static HttpTransport setUpTransport() {
  HttpTransport transport = GoogleTransport.create();
  GoogleHeaders headers = (GoogleHeaders) transport.defaultHeaders;
  headers.setApplicationName("Google-PredictionSample/1.0");
  headers.gdataVersion = "2.0";
  AtomParser parser = new AtomParser();
  parser.namespaceDictionary = Namespace.DICTIONARY;
  transport.addParser(parser);
  return transport;
 }

 private static void authenticateWithClientLogin(HttpTransport transport)
   throws IOException {
  ClientLogin clientLogin = new ClientLogin();
  clientLogin.authTokenType = "gtrans";
  clientLogin.accountType = "HOSTED_OR_GOOGLE";
  clientLogin.username = "user@gmail.com";
  clientLogin.password = "password";
  clientLogin.authenticate().setAuthorizationHeader(transport);
 }

 public static Feed executeGet(HttpTransport transport, GttUrl url)
   throws IOException {

  HttpRequest request = transport.buildGetRequest();
 // url.fields = GData.getFieldsFor(Feed.class);
  request.url = url;

  return request.execute().parseAs(Feed.class);
 }
}


所以,我在一个小时内实现了translator toolkit api,然后 在clientLogin授权上停留了4个小时

请求的正确设置是

gdataVersion = "1.0"; 
and GET request 
不幸的是,在尝试的过程中,我

1.0 and POST 

这意味着
gdataVersion=“2”仅适用于已实现“新”客户端的API…afaik

1.0 and POST 
2.0 and GET