Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.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/1/angular/29.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
Javascript 获得;SyntaxError:意外标记<;在JSON中的位置0“;当订阅角度为+;的可观察对象时。NET核心MVC应用程序_Javascript_Angular_Typescript_Webpack_Asp.net Core Mvc - Fatal编程技术网

Javascript 获得;SyntaxError:意外标记<;在JSON中的位置0“;当订阅角度为+;的可观察对象时。NET核心MVC应用程序

Javascript 获得;SyntaxError:意外标记<;在JSON中的位置0“;当订阅角度为+;的可观察对象时。NET核心MVC应用程序,javascript,angular,typescript,webpack,asp.net-core-mvc,Javascript,Angular,Typescript,Webpack,Asp.net Core Mvc,我安装了Microsoft.AspNetCore.spattemplates,如本文所述,并使用dotnet new angular创建了一个新项目。使基地建立起来并运行良好;我正在使用Visual Studio 2017 我添加了一个带有简单http get的服务。数据很好地返回,我将其作为可观察数据返回给调用者;从那里,我订阅了可观测数据,并对数据做了一些处理。这就是问题所在。。如果我同意可观察的,它会抱怨: Exception: Call to Node module failed wit

我安装了Microsoft.AspNetCore.spattemplates,如本文所述,并使用
dotnet new angular
创建了一个新项目。使基地建立起来并运行良好;我正在使用Visual Studio 2017

我添加了一个带有简单http get的服务。数据很好地返回,我将其作为可观察数据返回给调用者;从那里,我订阅了可观测数据,并对数据做了一些处理。这就是问题所在。。如果我同意可观察的,它会抱怨:

Exception: Call to Node module failed with error: SyntaxError: Unexpected token < in JSON at position 0 
home.service.ts

从'@angular/core'导入{Injectable};
从'@angular/Http'导入{Http,Response};
从“rxjs/Observable”导入{Observable};
导入'rxjs/add/operator/map';
@可注射()
出口级家庭服务{
私人的http://localhost:1234/api';
构造函数(私有http:http){}
getData(计数:数字):可观察{
返回此文件。http
.get(`this.\u apirl}/Foo/${count}`,{withCredentials:true})
.map(response=>response.json())
}
}

我知道来自web api的数据是有效的JSON。失败的部分是当我试图订阅可观察的,我不知道它为什么抱怨。如果我这样做:

ngOnInit():void{
console.log('observable',this.homeService.getData(5));
}
。。然后它将可观察到的对象打印到控制台上


有什么想法吗?

我在看@DeborahK的角度路由回购,寻找可观察的例子,并意识到我没有处理调用方的错误

我更改了组件中的代码,如下所示:

this.homeService.getData(5)
    .subscribe(
        (res) => console.log(res),
        (err) => console.log(err)
    );

并且不再接收错误。谢谢

您的api可能没有返回jason数据此错误是通过调用
response.json()
引发的。它无法将您的响应正文转换为json。请尝试在您的可观察映射中控制台response.body当我在本地访问数据时,我的APIRL不包含本地主机信息。我的类似示例:
private baseUrl='api/products'如果您只是将url更改为
api
,会发生什么情况?@BabarBilal如果我使用response.body,我会收到一个错误“类型“response”上不存在属性“body”。当我在Postman中测试api时,我知道它正在返回有效的JSON。。看起来[{“var1”:123,…}]@DeborahK我有一个单独的WebAPI项目,我已经部署到本地IIS网站上了。。它不是同一个角度项目的一部分。我在我的组件中硬编码完整的url,仅用于测试目的。