C# IE8在发送带有激活属性交换的openid身份验证请求时被卡住
我在使用激活的属性交换发送身份验证请求时遇到问题。它适用于FF和Opera,但IE似乎有问题 错误发生在请求中。RedirectToProvider()。地址栏中的Url显示端点Url 下面是创建并发送身份验证请求的代码段C# IE8在发送带有激活属性交换的openid身份验证请求时被卡住,c#,openid,exchange-server,attributes,dotnetopenauth,C#,Openid,Exchange Server,Attributes,Dotnetopenauth,我在使用激活的属性交换发送身份验证请求时遇到问题。它适用于FF和Opera,但IE似乎有问题 错误发生在请求中。RedirectToProvider()。地址栏中的Url显示端点Url 下面是创建并发送身份验证请求的代码段 using (OpenIdRelyingParty openid = this.createRelyingParty()) { IAuthenticationRequest request = openid.Create
using (OpenIdRelyingParty openid = this.createRelyingParty())
{
IAuthenticationRequest request = openid.CreateRequest(openid_identifier, realm);
;
var fetch = new FetchRequest();
fetch.Attributes.AddRequired(WellKnownAttributes.Contact.Email);
request.AddExtension(fetch);
// Send your visitor to their Provider for authentication.
request.RedirectToProvider();
}
我猜在RedirectToProvider()中,会发送一个帖子,并在GET之后缩短。RFC不允许POST后跟GET。不幸的是,我不知道如何验证它
是否有人遇到了同样的问题?进一步调查后,这种情况似乎发生了(根据提供商日志): 身份验证请求通过POST发送。提供程序使用重定向进行应答。这就是为什么一开始有一个帖子,然后有一个GET 我不认为openId规范是这么说的。如果我用POST请求,是否应该有POST响应;如果我用GET请求,是否应该有GET响应 无论如何。。有没有办法让RedirectToProvider()方法通过GET而不是POST发送请求