google api с параметрами выдает неизвестный заголовок авторизации

#google-analytics #google-api #gdata

#google-analytics #google-api #gdata

Вопрос:

У меня такая проблема, что обычно точка входа api работает нормально:

https://www.google.com/analytics/feeds/accounts/default

но когда я добавляю такие параметры, как:

https://www.google.com/analytics/feeds/accounts/default?max-results=50

затем происходит сбой. Это часть взаимодействия, если кто-то может сказать, что не так:

 GETamp;https://www.google.com/analytics/feeds/accounts/defaultamp;oauth_consumer_key=CONSUMERKEY&oauth_nonce=88526211463343710&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1321044173&oauth_token=CONSUMERTOKEN&oauth_version=1.0
{ host: 'www.google.com',
  path: '/analytics/feeds/accounts/default?max-results=25',
  method: 'GET',
  headers: { Authorization: 'OAuth oauth_token="CONSUMERTOKEN", oauth_timestamp="1321044173", oauth_nonce="88526211463343710", oauth_consumer_key="CONSUMERKEY", oauth_signature_method="HMAC-SHA1", oauth_version="1.0", oauth_signature="S+ob3FyVFpwRsu4x7C/wmkwbnDY="' } }
STATUS: 401
HEADERS: {"www-authenticate":"GoogleLogin realm="http://www.google.com/accounts/ClientLogin", service="analytics"","content-type":"text/html; charset=UTF-8","date":"Fri, 11 Nov 2011 20:42:56 GMT","expires":"Fri, 11 Nov 2011 20:42:56 GMT","cache-control":"private, max-age=0","x-content-type-options":"nosniff","x-frame-options":"SAMEORIGIN","x-xss-protection":"1; mode=block","server":"GSE","connection":"close"}
response: Unknown authorization header
  

Этот вопрос задается несколько раз здесь и там с разными вариациями, но я пока не могу найти решение основной проблемы…

Комментарии:

1. у меня точно такая же проблема. очень расстраивает. Для меня проблема в Google Calendar api с запросом PUT. Это происходит только тогда, когда я прикрепляю параметры v = 2 или gsessionid к URL.

2. Пожалуйста, смотрите мой ответ ниже. Базовая строка и опубликованные значения должны точно совпадать, по крайней мере, в моем случае это было проблемой.

Ответ №1:

Оказывается, Google требует параметры URL в базовой строке подписи:

GETamp;https://www.google.com/analytics/feeds/accounts/defaultamp;oauth_consumer_key=CONSUMERKEY&oauth_nonce=88526211463343710&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1321044173&oauth_token=CONSUMERTOKEN&oauth_version=1.0

->

GETamp;https://www.google.com/analytics/feeds/accounts/defaultamp;oauth_consumer_key=CONSUMERKEY&oauth_nonce=88526211463343710&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1321044173&oauth_token=CONSUMERTOKEN&oauth_version=1.0amp;max-results=50

Конечно, в алфавитном порядке, как и все остальные параметры. Это устранило мою проблему.

Комментарии:

1. итак, вы отправляете его в заголовках вместо URL?