Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 415(不支持的媒体类型)角度API调用_C#_Angular_Asp.net Web Api - Fatal编程技术网

C# 415(不支持的媒体类型)角度API调用

C# 415(不支持的媒体类型)角度API调用,c#,angular,asp.net-web-api,C#,Angular,Asp.net Web Api,尝试调用API GET调用时,我收到不支持的媒体类型错误 以下是后端代码: public async Task<JObject> GetSummonerData(GetSummonerDataDto getMatch) { string username = getMatch.Username; HttpClient client = new HttpClient(); client.DefaultRequestHead

尝试调用API GET调用时,我收到不支持的媒体类型错误

以下是后端代码:

    public async Task<JObject> GetSummonerData(GetSummonerDataDto getMatch)
    {
        string username = getMatch.Username;
        HttpClient client = new HttpClient();
        client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
        string url="https://na1.api.riotgames.com/lol/summoner/v4/summoners/by-name/" +username;
        client.DefaultRequestHeaders.Add("X-Riot-Token", _riotToken);
        HttpResponseMessage response = await client.GetAsync(url);
        response.EnsureSuccessStatusCode();
        var body = await response.Content.ReadAsStringAsync();
        JObject json = JObject.Parse(body);
        return json;
    }
现在,当我进行这个特定的调用时,我立即收到HTTP415错误。但是,我有另一个GET函数,这个函数实际上是多次调用
getcallerdata
后端,并且正在工作

  getSummonerDataMultiple() {
       return this.http.get(this.baseUrl + 'getsummonerdatamultiple');
以下是上述角度代码的后端代码:

    public async Task<JArray> GetSummonerDataMultiple()
    {
        string[] players = {"twokdavey", "jimlan", "captainwalrus69", "pynkcoffee"};
        JArray SummonersData= new JArray();
        foreach(var player in players)
        {
            var user = await GetSummonerData(new GetSummonerDataDto{Username = player});
            if(user != null){
                SummonersData.Add(user);
            }
        }
        return SummonersData;        
    }
对于我的角度部分,我甚至将参数硬编码为
{'username':'tankthebeast'}
。我已经成功地使用了涉及DTO的其他函数,但尽管我回到代码中,我没有看到任何差异。前面的问题建议添加
Content-Type
HTTP头,如我的第一部分所述,但错误包括

我的问题最大的亮点是我的标题在浏览器中显示
application/problem+jso
n,我找不到更多信息


最后一条信息。邮递员显示所有功能。这是一个我自己无法解决的角度问题。

经验法则:使用HTTP GET时不要发送
内容类型
HTTP头

Content-Type
HTTP头通知服务器请求的主体。在HTTP的情况下得到你没有身体


更多信息请访问。

您的API支持JSON吗?@jess是的,支持。
    public async Task<JArray> GetSummonerDataMultiple()
    {
        string[] players = {"twokdavey", "jimlan", "captainwalrus69", "pynkcoffee"};
        JArray SummonersData= new JArray();
        foreach(var player in players)
        {
            var user = await GetSummonerData(new GetSummonerDataDto{Username = player});
            if(user != null){
                SummonersData.Add(user);
            }
        }
        return SummonersData;        
    }
public string Username {get; set;}