asp.net – Google OpenId:找不到OpenID端点(间歇性)

前端之家收集整理的这篇文章主要介绍了asp.net – Google OpenId:找不到OpenID端点(间歇性)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
通常使用谷歌OpenId工作正常,每天数千次,然后它将开始间歇性出错并超时一小时左右(一些请求将验证,但不是全部).重复验证最终会起作用.

错误消息是:

Event code: 200000 
Event message: No OpenID endpoint found. : https://www.google.com/accounts/o8/id 

Sequence contains no elements

添加log4net产量:

DotNetOpenAuth.Yadis:
Error while performing discovery on: "https://www.google.com/accounts/o8/id": 
DotNetOpenAuth.Messaging.ProtocolException:
 Error occurred while sending a direct message or getting the response. 
 ---> System.Net.WebException: The operation has timed out     
  at System.Net.HttpWebRequest.GetResponse()    
  at DotNetOpenAuth.Messaging.StandardWebRequestHandler.GetResponse
     (HttpWebRequest request,DirectWebRequestOptions options) 
     in  c:\...\Dot...Core\Messaging\StandardWebRequestHandler.cs:line 127    
 --- End of inner exception stack trace ---     
  at DotNetOpenAuth.Messaging.StandardWebRequestHandler.GetResponse
     (HttpWebRequest request,DirectWebRequestOptions options) 
     in c:\...\Dot...Core\Messaging\StandardWebRequestHandler.cs:line 175
  at DotNetOpenAuth.Messaging.UntrustedWebRequestHandler.GetResponse
     (HttpWebRequest request,DirectWebRequestOptions options)
     in c:\...\Dot...Core\Messaging\UntrustedWebRequestHandler.cs:line 250
  at DotNetOpenAuth.Yadis.Yadis.Request
     (IDirectWebRequestHandler requestHandler,Uri uri,Boolean requireSsl,String[] acceptTypes) 
     in c:\...\Dot...OpenId\Yadis\Yadis.cs:line 172
  at DotNetOpenAuth.Yadis.Yadis.Discover
     (IDirectWebRequestHandler requestHandler,UriIdentifier uri,Boolean requireSsl)
     in c:\...\DotNetOpenAuth.OpenId\Yadis\Yadis.cs:line 63
  at DotNetOpenAuth.OpenId.UriDiscoveryService.Discover
     (Identifier identifier,IDirectWebRequestHandler requestHandler,Boolean& abortDiscoveryChain) 
     in c:\...\DotNet...OpenId\OpenId\UriDiscoveryService.cs:line 51
  at DotNetOpenAuth.OpenId.IdentifierDiscoveryServices.Discover
     (Identifier identifier) 
     in c:\...\Dot...OpenId\OpenId\IdentifierDiscoveryServices.cs:line 58
  at DotNetOpenAuth.OpenId.RelyingParty.AuthenticationRequest.Create
     (Identifier userSuppliedIdentifier,OpenIdRelyingParty relyingParty,Realm realm,Uri returnToUrl,Boolean createNewAssociationsAsNeeded) 
     in ...OpenId.RelyingParty\OpenId\RelyingParty\AuthenticationRequest.cs:line 364

DotNetOpenAuth.Http WebException: 
 Timeout from https://www.google.com/accounts/o8/id,no response available.

有任何想法吗?

解决方法

听起来您需要修复网络延迟.谷歌似乎不太可能成为这里的瓶颈.

您可能还希望增加结束时的HTTP超时以降低故障率.完整的选项可用here.特别是你可能正在寻找:

<untrustedWebRequest
            timeout="00:00:10"
            readWriteTimeout="00:00:01.500" />

查看配置链接以查看其位置的上下文.

猜你在找的asp.Net相关文章