首页 > 解决方案 > 在 microsoft edge 上工作时日期不同,但在 Chrome 或 Firefox 上工作时正确

问题描述

我面临一个奇怪的问题。我正在开发一个应用程序,其中前端位于 Angular 7 中,Web API 位于 Dotnet 核心中。

从前端,我发送一个包含 JSON 数据的字符串。我将其解析为后端的对象。

它在 Chrome 和其他浏览器中运行良好,但不是在边缘,所以为了找出根本原因,我进行了调试,发现它在将字符串解析为对象时抛出异常,特别是在解析日期时抛出异常。我比较了字符串和字符串看起来完全一样。下面是字符串

从其他浏览器 {"WidgetID":3,"ProviderIDs":"2,3","MonthIDs":"","StartDate":"1/1/2019","EndDate":"12/31/2019" ,"Class1Ids":"","Class2Ids":"","Class3Ids":"","Class4Ids":"","EmployeeStatusIds":""}

从边 {"WidgetID":3,"ProviderIDs":"2,3","MonthIDs":"","StartDate":"‎1‎/‎1‎/‎2019","EndDate":"‎12 ‎/‎31‎/‎2019","Class1Ids":"","Class2Ids":"","Class3Ids":"","Class4Ids":"","EmployeeStatusIds":""}

但是来自edge的字符串在解析日期部分时抛出异常。

所以我想我应该在一些在线比较工具中比较字符串我发现了问题请在下图中找到。 在此处输入图像描述

请查看更改文本标签下方日期中的红点。

请在下面的角度中找到将json解析为角度字符串的代码

getDashboardData(filterCriteria: any): Observable<any> {
        let param = "jsonCriteria=" + JSON.stringify(filterCriteria);
        return this.apiService.get('AnalyticalDashboard', 'GetBenefitProviderCosts', param)
            .map(res => {
                return res;
            });
    }

谁能指导我如何解决这个问题。

谢谢

标签: angularbrowser.net-core

解决方案


推荐阅读