异常:'<'是无效的值开头 [英] Exception: '<' is an invalid start of a value

查看:18
本文介绍了异常:'<'是无效的值开头的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个带有控制器方法的Blazor WebAssembly项目,如下所示:

[HttpGet]
    public async Task<List<string>> GetStatesForProfile()
    {
        IConfigurationSection statesSection = configuration.GetSection("SiteSettings:States");
        var sections = statesSection.GetChildren();
        var states = statesSection.GetChildren().Select(s => s.Key).ToList<string>();
        return states;            
    }

剃须刀页面调用此方法:

private async Task<bool> GetStatesModel()
{
    try
    {
        States = await http.GetJsonAsync<List<string>>("api/account/getstatesforprofile");            
        ...
    }
    catch (Exception ex)
    {
        Console.WriteLine($"Exception: {ex.Message}, Inner: {ex.InnerException.Message}");
    }

我收到此异常:

异常:‘<;’是无效的值开头。

我从appsettings.json文件中读取这些值,值中没有‘<;’。

{      
  "SiteSettings": {    
    "States": {
      "New York": ["NYC"],
      "California": ["Los Angeles", "San Francisco"]
    }
 }

我还在控制器方法中设置了断点,但它没有命中。 这是什么错误?它是通过解析json得到的吗?如何解决这个问题?

推荐答案

您收到的响应很可能是html,而不是您请求的终结点的实际JSON格式。请检查一下。

AS HTML通常以<html>标记开头,JSON验证器在第一个字符失败。

这篇关于异常:&#39;&lt;&#39;是无效的值开头的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆