繁体   English   中英

如何从外部网站获取数据到.NET Core中的Web API?

[英]How to get data from external website into a web API in .NET core?

我正在学习使用.NET核心制作Web api,并且遵循了本文档。

https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-2.1

我做了一个新的新项目,这是我的代码。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;

namespace FortniteAPI.Controllers
{
    [Route("api/[controller]")]
    public class ValuesController : Controller
    {
        // GET api/values
        [HttpGet]
        public string Get()
        {
            return "https://api.fortnitetracker.com/v1/profile/{platform}/{nickname}";
        }

        // GET api/values/5
        [HttpGet("{id}")]
        public string Get(int id)
        {
            return "value";
        }
    }
}

我正在使用来自此网站的数据作为我的Web API https://www.fortnitetracker.com/

API链接需要两个参数,即平台和昵称。 我使用了自己的信息,但是在启动应用程序时看不到数据。

我也有一个标题键来使用它,它在文档中显示。

要使用API​​密钥,您需要将其作为请求的标头传递。

我不太明白这句话。

我也在Ionic 3中编程,我将此api链接与HTTP get一起使用,但由于CORS而无法使用。 这就是为什么我使用.NET核心应用程序与客户端通信的原因。

有人可以指出我正确的方向吗?

UPDATE

[HttpGet]
        public string Get()
        {
            HttpClient http = new HttpClient();
            http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("APIKEY", header);
            var data = http.GetAsync(url).Result.Content.ReadAsStringAsync().Result;
            return data;
        }

请将此代码放在您的方法中,如果您需要其他任何信息,请告诉我。

HttpClient http = new HttpClient();
http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "Your Oauth token");
var data =  http.PostAsync("Your Url", new StringContent("Data", Encoding.UTF32, "text/xml")).Result.Content.ReadAsStringAsync().Result;

//for calling get

var data2=http.GetAsync("").Result.Content.ReadAsStringAsync().Result;

修复它,感谢您的支持!

 [HttpGet]
        public string Get()
        {
            HttpClient http = new HttpClient();
            http.DefaultRequestHeaders.Add(schemename, header);
            var data = http.GetAsync(url).Result.Content.ReadAsStringAsync().Result;
            return data;
        }    

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM