При доступе к Google My Business API для отзывов возвращается «404 метод не найден» - PullRequest
0 голосов
/ 03 января 2019

Я хочу получать отзывы от GMB API, и во время звонка я получаю 404 Метод не найден .

Я зарегистрировал свой бизнес в Google, а также опубликовал несколько отзывов о нем.,Я также установил токен обновления и токен доступа, полученный с помощью моих OAuth client_id и client_secret, в моем коде Java.

Ниже приведена ошибка, которую я получаю при работе моего сервиса.

WARNING: unable to change permissions for owner: 
C:\Users\anubhavs1\.store\mybusiness_sample
Exception in thread "main" 
com.google.api.client.googleapis.json.GoogleJsonResponseException: 404 Not 
Found
{
  "code" : 404,
  "errors" : [ {
    "domain" : "global",
    "message" : "Method not found.",
    "reason" : "notFound"
  } ],
  "message" : "Method not found.",
  "status" : "NOT_FOUND"
} at 
com.google.api.client.googleapis.json.GoogleJsonResponseException.from(GoogleJsonResponseException.java:150)
    at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:113)
    at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:40)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest$1.interceptResponse(AbstractGoogleClientRequest.java:321)
    at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:1067)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469)
    at com.kpit.bs.Main.listAccounts(Main.java:112) at    com.kpit.bs.Main.main(Main.java:97)

Iсделал следующее-

**Main Method**
public static void main(String[] args) throws Exception {
httpTransport = GoogleNetHttpTransport.newTrustedTransport();
dataStoreFactory = new FileDataStoreFactory(DATA_STORE_DIR);
Credential credential = authorize();

credential.setAccessToken("##Access Token from Authorization Server##");
credential.setRefreshToken("##Refresh Token from Authorization Server##");

mybusiness = new MyBusiness.Builder(httpTransport, JSON_FACTORY, 
credential).setApplicationName(APPLICATION_NAME).build();

MyBusiness.Accounts.List accountsList = mybusiness.accounts().list();
ListAccountsResponse response = accountsList.execute();      
java.util.List<Account> accounts = response.getAccounts();                       
for (Account account : accounts) {
System.out.println(account.toPrettyString());
    }
  }

**Authorize Method**
private static Credential authorize() throws Exception {
InputStream secrets = 
Main.class.getResourceAsStream("/client_secrets.json");
if (secrets == null) {
        System.out.println(
                "Enter Client ID and Secret from Google 
API  Console " + "into google-my-business-api- 
sample/src/main/resources/client_secrets.json");
        System.exit(1);
    }
GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(JSON_FACTORY, 
new InputStreamReader(secrets));
    if 
(clientSecrets.getDetails().getClientId().startsWith("Enter") || 
clientSecrets.getDetails().getClientSecret().startsWith("Enter ")) {
        System.out.println(
                "Enter Client ID and Secret from Google 
API Console " + "into google-my-business-api- 
sample/src/main/resources/client_secrets.json");
        System.exit(1);
    }
GoogleAuthorizationCodeFlow flow = new 
GoogleAuthorizationCodeFlow.Builder(httpTransport, JSON_FACTORY, 
clientSecrets, Collections.singleton 
("https://www.googleapis.com/auth/plus.business.manage")).    
setDataStoreFactory(dataStoreFactory).setAccessType("offline")
                    .build();
return new AuthorizationCodeInstalledApp(flow, new 
LocalServerReceiver.Builder().setPort(8080).build()).authorize("user");
}

Моя цель - получить отзывы, опубликованные в учетных записях, но в настоящее время не в состоянии получить даже данные учетных записей.

...