无法获取网络凭据

Mad*_*d0g 14 c# basic-authentication dotnetopenauth networkcredentials oauth-2.0

所以我一直在使用DotNetOpenAuth一段时间,今天我需要添加对提供程序的支持,迫使我发送带有基本身份验证的密钥(我一直在使用旧版本,只有Post参数)

我试过用ClientCredentialApplicator.NetworkCredential,它没用.然后根据这里的建议,我已经做了我自己的ClientCredentialApplicator.

我仍然没有工作,我把断点放进去ApplyClientCredential,他们从来没有打过.

我升级到最新版本(4.3.0.0),应该有这个修复.

一切正常,但没有Authorization标题,远程服务器回答301错误(这让我认为它与提交相同的问题 - 授权信息未添加到请求,直到服务器回答Unauthorized和我正在使用的提供程序当没有Authorization标题时回答301

CMe*_*rat -1

您可以通过访问 request.Headers 集合手动将基本身份验证标头添加到 HttpWebRequest。

您可以按照维基百科上的指示添加标题:

request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(new UTF8Encoding(false).GetBytes("username:password")));
Run Code Online (Sandbox Code Playgroud)