如何在不使用 sodaclient 的情况下与 MVC 应用程序中的 OpenData API 端点(私有数据集)通信?我有一个 apptoken 和凭据。
问问题
131 次
1 回答
1
澄清一下,这是一个私有数据集,对吗?
您需要从您的 ASP.NET 代码进行 RESTful HTTP 调用,并将您的应用程序令牌作为X-App-Token
标头包含在内,并使用您的用户凭据提供 HTTP 基本身份验证。
这里有一些有用的文档:
SoQL 非常简单,因此您只需为您的数据集构建正确的 SoQL 查询并将其传递到您的GetAsync
调用中。我不是 ASP.NET 程序员,但我认为它看起来像这样。
using (var client = new HttpClient())
{
client.BaseAddress = new Uri("https://data.government.gov/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
// Also add X-App-Token and authentication headers here
// New code:
HttpResponseMessage response = await client.GetAsync("resource/644b-gaut.json?$where=date > '2014-12-01'");
if (response.IsSuccessStatusCode)
{
// Do stuff
}
}
添加身份验证和 X-App-Token 标头作为练习留给读者。
于 2015-05-29T17:39:00.747 回答