【发布时间】:2013-02-01 11:29:12
【问题描述】:
我想为 Google 搜索创建一个简单的异步请求。
根据谷歌的说法,最简单的方法是使用他们的 JSON API 和简单的 curl 请求
curl -e http://www.my-ajax-site.com \ 'https://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=Paris%20Hilton'
我想提取前 5 页结果并将每个结果的 URL 添加到数组中。我发现很难在 HttpClient.GetAsync 上找到任何解释清楚的教程。 我没有比这更进一步的了:
public String[] search(String term = "")
{
var rq = new HttpClient();
var uri = new Uri("https://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=site:" + term);
rq.GetAsync(uri);
}
我想这应该启动一个任务,这样我就不会阻塞主线程,但是我如何为请求完成注册一个回调方法?
【问题讨论】:
-
只需
rq.GetAsync(uri).Result等待它。 -
@leppie 我不想等待它,我将使用另一个 API 来执行此操作,我可能会运行 10-15 个线程。
标签: c# asynchronous .net-4.5 dotnet-httpclient