我想从此网址https://pro-sitemaps.com/api/
创建站点地图获取站点地图详细信息的方法是get_sitemap
它需要两个参数api_key和site_id
如果有人可以建议/建议我如何在上述网址的方法中传递参数,我将不胜感激?
我正在使用vs2005和c#。
我从这段代码开始:
string apiUrl = "https://pro-sitemaps.com/api/";
Uri address = new Uri(apiUrl);
// Create the web request
HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest;
编辑:我不认为这是重复的。
我没有像index.php或aspx这样的页面,所以如何添加参数?如果我这样写https://pro-sitemaps.com/api/api_key=abcd&site_id=123则不起作用。
更新:在重复标记之前,我希望有人能够仔细阅读这个问题。这里有三件事 - 一件是url,另一件是“get_sitemap”,第三件是两个参数。 现在我必须在“get_sitemap”方法中传递两个参数,并将API reqest发送到上面的URL。 url返回json数据。问题是我怎么能这样做,因为我在网上搜索但找不到答案。
最后我想出了如何做到这一点。如果有人仍然无法在这里找到答案,那就是一种方法。
ANSWER :
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://pro-sitemaps.com/api/");
string postData = "method=get_sitemap&api_key=abcd&site_id=1234";
byte[] data = Encoding.ASCII.GetBytes(postData);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;
using (Stream stream = request.GetRequestStream())
{
stream.Write(data, 0, data.Length);
}
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
string responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
Response.Write(responseString.ToString());