Вопрос в следующем: есть ли новый способ вызова API, чтобы действие можно было вставить в профиль пользователя?
Около месяца назад я разместил здесь похожий вопрос. Он работал нормально до начала этой недели, когда он внезапно перестал работать и пожаловался на эту ошибку:
[сообщение об ошибке]
Произошла ошибка при отправке прямого сообщения или получении ответа
[внутреннее исключение]
Удаленный сервер вернул ошибку: (400) Bad Request.
[трассировка стека]
в DotNetOpenAuth.Messaging.StandardWebRequestHandler.GetResponse (запрос HttpWebRequest, параметры DirectWebRequestOptions)
в DotNetOpenAuth.Messaging.StandardWebRequestHandler.GetResponse (запрос HttpWebRequest)
в DotNetOpenAuth.Messaging.Channel.GetDirectResponse (HttpWebRequest webRequest)
в DotNetOpenAuth.Messaging.Channel.RequestCore (запрос IDirectedProtocolMessage)
в DotNetOpenAuth.Messaging.Channel.Request(IDirectedProtocolMessage requestMessage)
в DotNetOpenAuth.OAuth2.ClientBase.UpdateAuthorizationWithResponse (состояние авторизации IAuthorizationState, успех авторизации EndUserAuthorizationSuccessAuthCodeResponse)
в DotNetOpenAuth.OAuth2.WebServerClient.ProcessUserAuthorization (запрос HttpRequestInfo)
в GPlusWrapper.PlusWrapper.GetAuthorization(клиент WebServerClient) в \gplus_csharp_ssflow\PlusWrapper.cs:строка 122
в Google.Apis.Authentication.OAuth2.OAuth2Authenticator`1.LoadAccessToken()
в Google.Apis.Authentication.OAuth2.OAuth2Authenticator
1.ApplyAuthenticationToRequest(HttpWebRequest request)
1 onRequestReady) в Google.Apis.Requests.Request.ExecuteRequestAsync(Action
at Google.Apis.Requests.Request.CreateWebRequest(Action1 responseHandler) at Google.Apis.Requests.ServiceRequest
1.GetAsyncResponse(Action1 responseHandler) at Google.Apis.Requests.ServiceRequest
1.GetResponse() в Google.Apis.Requests.ServiceRequest`1.Fetch())
На первый взгляд тот, кто имеет опыт работы с Google API и DNOA, скажет, что это проблема DNOA. Я искал в течение трех дней, и проблемы, которые я обнаружил с тем же сообщением об ошибке, не соответствуют проблеме - или предложенное решение не соответствует моей проблеме.
Итак, следующее, что нужно сделать, это обновить, да, это имеет смысл, так как команда Google, возможно, что-то изменила в том, как работает API. Поэтому я обновился с v1.2.4737.25316
до v1.3.0.15233
, которая является последней стабильной версией в репозитории.
Чтобы убедиться, что это не мой код или что-то в моем коде, который вызывает проблему, я повторно посетил образец Гаса. код, приведенный здесь. Этот пример кода раньше работал в v1.2
, но перестал работать и в v1.2
, и в v1.3
.
Теперь, когда есть новая версия библиотеки, имеет смысл повторно посетить документы и посмотреть, не изменилось ли что-то в конфигурации или как вызвать API. Кажется, нет ничего особенного в том, как должен вызываться API.
Итак, я сделал то, что делал в прошлый раз при отладке приложения. я пробовал оба
- запрос_видимые_действия; а также
- requestvisibleactions
а у меня еще был параметр access_type
и ничего не работало.
Еще раз, мой вопрос: есть ли новый способ вызова API, чтобы действие можно было вставить в профиль пользователя?
Обратите внимание, что я использую поток на стороне сервера