ASP.NET Core托管的webapi在GET请求中显示“ SyntaxError:JSON.parse”

时间:2019-08-22 11:00:56

标签: c# json syntax-error azure-sql-database asp.net-core-webapi

免责声明:我刚刚开始学习C#,正在尝试构建一个向SQL数据库发出请求的ASP.NET核心Web API。两者现在都托管在Azure上...

...,当我调用Azure上托管的api时,我可以通过Postman成功地发出请求,但But无法显示可读数据。

在控制器中

namespace TenantsApi.Models
{
    public class Tenant
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public string FirstName { get; set; }
        public string Surname { get; set; }
        public string Email { get; set; }
        public double Rent { get; set; }
        public string Address { get; set; }
    }
}

在模型中

using Microsoft.EntityFrameworkCore;

namespace TenantsApi.Models
{
    public class TenantContext : DbContext
    {
        public TenantContext(DbContextOptions<TenantContext> options) : base(options)
        {
        }

        public DbSet<Tenant> TenantDetails { get; set; }
    }
}

DbContext

[{"id": 1,
"Title": "Mr",
"FirstName":"John",
"Surname":"Smith",
"Email":"John@aol.com",
"Rent":500.00,
"Address":"1 Random Place, London, L1 1AA"}]

预期结果应类似于:

[

实际结果:

filter()

错误消息:“ SyntaxError:JSON.parse:JSON数据第1行第2列的数据意外结束”只能在Firefox上查看

firefox中的标题告诉我:

内容编码gzip 内容类型application / json;字符集= utf-8 日期星期四,2019年8月22日10:23:25 GMT 服务器Microsoft-IIS / 10.0 传输编码分块 变化接受编码 X-Powered-by ASP.NET

1 个答案:

答案 0 :(得分:-1)

https://docs.microsoft.com/en-us/azure/app-service/app-service-web-tutorial-dotnetcore-sqldb

如果您是c#和Azure的新手,那么这将是一个很好的快速入门。

您还可以在github仓库中使用以下内容:

https://github.com/Azure-Samples/dotnet-core-api

这里有一些重要的注意事项:

  • 请确保为托管API启用CORS。 您可以参考下面的文档以供参考:

https://docs.microsoft.com/en-us/azure/app-service/app-service-web-tutorial-rest-api

  • 默认情况下,SQL Azure数据库仅允许来自Azure应用程序或资源的连接。如果您尝试从本地计算机访问它,请确保为其添加防火墙规则:

请按照以下文档操作:

https://docs.microsoft.com/en-us/azure/app-service/app-service-web-tutorial-dotnet-sqldatabase

请让我知道它的进展。希望有帮助。