這裏是發佈到craigslist的示例。 http://www.craigslist.org/about/bulk_posting_interface以perl語言。從asp.net網站發佈項目到craigslist
在asp.net中的任何craigslist發佈示例?
我將perl示例(從上面的鏈接)轉換爲asp.net,但仍然生成一個錯誤,錯誤是「服務器提交違反協議。部分= ResponseStatusLine」 任何人都有這方面的想法。在此先感謝 這裏是我的代碼,
string xml = @"<?xml version='1.0'?><rdf:RDF xmlns='http://purl.org/rss/1.0/' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:cl='http://www.craigslist.org/about/cl-bulk-ns/1.0'> <channel><items><rdf:li rdf:resource='NYCBrokerHousingSample1'/><rdf:li rdf:resource='NYCBrokerHousingSample2'/> </items> <cl:auth username='[email protected]' password='*******' accountID='14'/> </channel> <item rdf:about='NYCBrokerHousingSample1'> <cl:category>fee</cl:category> <cl:area>nyc</cl:area> <cl:subarea>mnh</cl:subarea> <cl:neighborhood>Upper West Side</cl:neighborhood> <cl:housingInfo price='1450' bedrooms='0' sqft='600'/> <cl:replyEmail privacy='C'>[email protected]</cl:replyEmail> <cl:brokerInfo companyName='Joe Sample and Associates' feeDisclosure='fee disclosure here' /> <title>Spacious Sunny Studio in Upper West Side</title> <description><![CDATA[ posting body here ]]></description> </item> </rdf:RDF>";
string BASE_URL = "https://post.craigslist.org/bulk-rss/post";
HttpPost(BASE_URL, xml); Private static string HttpPost(string url, string postData)
{
HttpWebRequest request = null;
Uri uri = new Uri(url);
request = (HttpWebRequest)WebRequest.Create(uri);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = postData.Length;
using (Stream writeStream = request.GetRequestStream())
{
UTF8Encoding encoding = new UTF8Encoding();
byte[] bytes = encoding.GetBytes(postData);
writeStream.Write(bytes, 0, bytes.Length);
}
string result = string.Empty;
request.ProtocolVersion = System.Net.HttpVersion.Version10;
request.KeepAlive = false;
try
{
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
using (Stream responseStream = response.GetResponseStream())
{
using (System.IO.StreamReader readStream = new System.IO.StreamReader(responseStream, Encoding.UTF8))
{
result = readStream.ReadToEnd();
}
}
}
}
catch (Exception exp)
{
// MessageBox.Show(exp.Message);
}
return result;
} // end HttpPost
我用Fiddle2和調試但是那產生錯誤的迴應 –