我必须从Pingdom接收API。地址为https://api.pingdom.com
我如何在.NET中做一个http get当它是https的时候?谷歌没有给我提供任何东西:(
诚挚的问候
更新::
谢谢你的帮助..尝试使用PowerShell:
$NC = New-Object System.Net.NetworkCredential("USER", "PASS")
$CC = New-Object System.Net.CredentialCache
$CC.Add("api.pingdom.com", 443, "Basic", $NC)
$webclient = [System.Net.WebRequest]::Create("https://api.pingdom.com")
$webclient.Credentials = $CC
$webclient.PreAuthenticate = $true
$webclient.Method = "POST"
$webclient.GetResponse()我得到错误:异常调用带有"0“参数的"GetResponse”:“远程服务器返回错误:(401)未授权。”
有什么好的建议吗?
发布于 2012-07-25 19:52:52
基本上,
http://www.pingdom.com/services/api-documentation-rest/
用户凭据的身份验证方法是HTTP基本访问身份验证(通过HTTPS加密)。这意味着您将在每次发出请求时提供凭据。未使用任何会话。
HTTP基本访问身份验证在这里和MSDN上都有很好的文档记录。
这个答案和API文档应该会让你走上正确的道路。
假设您使用WebRequest,则将CredentialCache附加到您的请求:
NetworkCredential nc = new NetworkCredential("user", "password");
CredentialCache cc = new CredentialCache();
cc.Add("www.site.com", 443, "Basic", nc);CredentialCache用于设置基本身份验证。
发布于 2012-07-25 19:55:35
您应该能够设置set客户端的凭据,然后无论何时需要登录,它都会提供您提供的凭据。
WebClient webClient = new WebClient();
webClient.Credentials = new System.Net.NetworkCredential("UserName", "Password", "Domain");https://stackoverflow.com/questions/11648988
复制相似问题