调用一个HTTP接口时返回“远程服务器返回错误: (403) 已禁止。”
请问有哪位大神知道是什么问题,下边是代码
public static string HttpPostFrom(string url, string data, string clientid, string clientsecret)
{
string htmlAll = "";
try
{
string SendMessageAddress = url;//请求链接
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(SendMessageAddress);
request.Method = "POST";
request.AllowAutoRedirect = true;
request.Timeout = 20 * 1000;
request.ContentType = "application/x-www-form-urlencoded";
//request.Headers.Add("Authorization","Basic SDIyMDc4MTAwMDMzOjEyMzQ1Ng==");
string usernamePassword = clientid + ":" + clientsecret;
request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(new ASCIIEncoding().GetBytes(usernamePassword)));
//string PostData = "a=1&b=2";//请求参数格式
string PostData = data;//请求参数
byte[] byteArray = Encoding.UTF8 .GetBytes(PostData);
request.ContentLength = byteArray.Length;
using (Stream newStream = request.GetRequestStream())
{
newStream.Write(byteArray, 0, byteArray.Length);//写入参数
newStream.Close();
}
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream rspStream = response.GetResponseStream();
using (StreamReader reader = new StreamReader(rspStream, Encoding.UTF8))
{
htmlAll = reader.ReadToEnd();
rspStream.Close();
}
response.Close();
}
catch (Exception ex)
{
htmlAll = ex.Message;
}
return htmlAll;
}