我已经搜索了一段时间,寻找与其他网站WebAPI连接的简便方法。有一些解决方案,但它们是以非常复杂的方式制作的。
我想做什么:
目前,我想要使用的API是必应搜索,但我正在寻找一些通用的方法。我找到了an example,但它对我不起作用,在我的应用中,我无法使用此类:" DataServiceQuery"因为它不存在。
你通常怎么做?你有自己喜欢的解决方案吗?是否有一些通用的方法,或者它取决于您使用的API类型?
我目前正在使用.NET MVC应用程序(如果它可以有任何区别)
答案 0 :(得分:1)
从服务器端
你可以像下面那样使用它。
// Create an HttpClient instance
HttpClient client = new HttpClient();
// Send a request asynchronously continue when complete
client.GetAsync(_address).ContinueWith(
(requestTask) =>
{
// Get HTTP response from completed task.
HttpResponseMessage response = requestTask.Result;
// Check that response was successful or throw exception
response.EnsureSuccessStatusCode();
// Read response asynchronously as JsonValue
response.Content.ReadAsAsync<JsonArray>().ContinueWith(
(readTask) =>
{
var result = readTask.Result
//Do something with the result
});
});
您可以在以下链接中查看示例。
https://code.msdn.microsoft.com/Introduction-to-HttpClient-4a2d9cee
对于JavaScirpt: 您可以将jQuery和WebAPI结合使用来完成您的工作。
它的步骤很少。
这是最简单的方法。
请参阅以下链接以供参考:
http://www.codeproject.com/Articles/424461/Implementing-Consuming-ASP-NET-WEB-API-from-JQuery
答案 1 :(得分:0)
这完全取决于您要使用的API类型。从.Net的角度来看,可能有.Net 2 Web Services
,WCF Services
和Web API Services
。
今天的Web API遵循REST标准和RMM。某些API需要作为url参数提供的API密钥,其他API则要求您放入请求的标头。甚至一些更强大的API,使用OAuth 2等身份验证方案。一些公司已经设计了自己的标准和惯例。
所以,简短的回答是没有通用的方法。很长的答案来自每个API的文档,并且彼此不同。