2010-07-28 122 views
0

你好我正在使用asp.net,并且我想将我的联系人列表添加到常用联系人网站上,因为我已经在不断的联系人上创建了试用帐户。我使用以下代码将记录添加到常量联系人数据库中。但它告诉我以下错误远程服务器403错误

远程服务器返回错误:(403)禁止。

我得到异常的响应部分

Uri address=new Uri(sUri); 
     HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest; 

     request.Credentials=new NetworkCredential ((sAPIKey + "%" + sUsername), sPassword); 
     request.Method = "POST"; 
     request.ContentType = "application/x-www-form-urlencoded"; 

     //Build data string 

     var data=new StringBuilder(); 
     data.Append("activityType=" + HttpUtility.UrlEncode("ADD_CONTACTS", Encoding.UTF8)); 

     data.Append("&data=" + HttpUtility.UrlEncode(("Email Address,Email Type,First Name,Last Name" + Convert.ToChar(10)), Encoding.UTF8)); 
     data.Append(HttpUtility.UrlEncode((email.Text + ",HTML," + txtfname.Text + "," + txtlname.Text), Encoding.UTF8)); 
     data.Append("&lists=" + HttpUtility.UrlEncode(sListUri)); 

     byte[] byteData = UTF8Encoding.UTF8.GetBytes(data.ToString()); 
     string st = string.Empty; 

     request.ContentLength = byteData.Length; 
     using (Stream postStream = request.GetRequestStream()) 
     { 

     postStream.Write(byteData, 0, byteData.Length); 
     } 


     using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) 
     { 
      StreamReader reader = new StreamReader(response.GetResponseStream()); 
      st = reader.ReadToEnd(); 
     } 




    string sCode =Convert.ToString(Response.StatusCode); 

预先感谢您。

回答

0

如果您在firefox中打开页面并检查firebug中的响应,您将看到错误编号的第二部分。 403只是第一部分。它可能是403.1或403.9或其他。有很多,具体的将帮助你缩小原因。另外,在HTTPWatch中尝试一样。

+0

Fiddler2免费软件产品还将为您提供很多有关通过HTTP发送和返回的内容的良好洞察。 – mikemanne 2010-07-28 13:29:42

+0

对不起,我的意思是提琴手。我使用Firefox比IE更多,所以我有时会弄糊涂IE工具。 :) – 2010-07-28 13:51:13

相关问题