У меня проблема с использованием движка приложений Google с таблицей Google.Я получаю токен авторизации с другим сервлетом (от google ClientLogin) и затем пытаюсь получить xml фида электронных таблиц с GET-запросом и заголовком авторизации (как описано в документации google).1003 *
public class My2Servlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
URLFetchService urlFetchService = URLFetchServiceFactory.getURLFetchService();
HTTPRequest tokenRequest = new HTTPRequest(new URL("http://localhost:8888/myGae/getauthtoken"), HTTPMethod.GET);
HTTPResponse tokenResponse = urlFetchService.fetch(tokenRequest);
String token = Utils.getText(tokenResponse.getContent()); /*this token is OK*/
HTTPRequest spreadsheetFeedRequest = new HTTPRequest(new URL("https://spreadsheets.google.com/feeds/spreadsheets/private/full"), HTTPMethod.GET);
spreadsheetFeedRequest.setHeader(new HTTPHeader("Authorization", "GoogleLogin auth=" + token));
HTTPResponse spreadsheetFeedResponse = urlFetchService.fetch(spreadsheetFeedRequest); /*here the problems!!!*/
String spreadsheetFeed = Utils.getText(spreadsheetFeedResponse.getContent());
resp.setContentType("text/plain");
resp.getWriter().println(spreadsheetFeed);
}
}
Я могу правильно получить токен, но когда я пытаюсь выполнить второй запрос на подачу электронной таблицы, у меня появляется ошибка 400 Bad Request, и если я повторяю попытку перезагрузить эту ошибку:
java.io.IOException: Could not fetch URL: https://spreadsheets.google.com/feeds/spreadsheets/private/full
Кажется, что работает только первый запрос ... на самом деле, если я комментирую второй запрос и получаю токен, тогда комментирую первый запрос и выполняю второй запрос с токеном, написанным от руки, я правильноесть вывод в формате XML для фида электронных таблиц ...
Почему я не могу выполнить два последующих запроса?