У меня возникли проблемы с подключением к моему веб-сервису с помощью json.
Я могу подключиться, но проблема возникает, когда мне нужно конвертировать Json в HTML, чтобы читать и работать с ним.
Я прочитал и попытался решить проблему, изменив заголовки, потому что я получил «text / html», и я думаю, что правильной формой является «application / json» в типе контента, но я не знаю, как это сделать.
Выкладываю код, спасибо.
home.ts
import { Component } from '@angular/core';
import { NavController, NavParams, MenuController, AlertController } from 'ionic-angular';
import {DbProvider} from '../../providers/db/db';
import { UserPage } from '../user/user';
import { HttpClient, HttpHeaders, HttpRequest } from '@angular/common/http';
import 'rxjs/add/operator/map';
import { Http, ResponseType } from '@angular/http';
import 'rxjs/add/operator/catch';
export class HomePage {
public db : DbProvider;
constructor(public navCtrl: NavController,
public navParams: NavParams,
public menu: MenuController,
private alertCtrl: AlertController,
public http: Http,
public https: HttpClient) {
}
ejercicios: any[];
ejercicio : any;
GetJson(){
return this.https.get('http://localhost:55531/postData.aspx/getEjercicioss'
).subscribe(data => {
this.ejercicios = JSON.parse(JSON.stringify(data));
console.log(this.ejercicios);
}, err => {
console.log(err);
});
}
home.html
<ion-content>
<ion-searchbar (ionInput)="GetJson($event)" ></ion-searchbar>
<ion-list inset>
<ion-item *ngFor="let ejercicio of ejercicios">
<h2>{{ejercicio}} </h2>
</ion-item>
</ion-list>
</ion-content>
Ошибка
HttpErrorResponse {headers: HttpHeaders, status: 200, statusText: "OK", url: "http://localhost:55531/postData.aspx/getEjercicioss", ok: false, …}error: error: SyntaxError: Unexpected token < in JSON at position 4
at JSON.parse (<anonymous>)
at XMLHttpRequest.onLoad (http://localhost:8100/build/vendor.js:62956:51)
at t.invokeTask (http://localhost:8100/build/polyfills.js:3:15660)
at Object.onInvokeTask (http://localhost:8100/build/vendor.js:5125:33)
at t.invokeTask (http://localhost:8100/build/polyfills.js:3:15581)
at r.runTask (http://localhost:8100/build/polyfills.js:3:10834)
at e.invokeTask [as invoke] (http://localhost:8100/build/polyfills.js:3:16794)
at p (http://localhost:8100/build/polyfills.js:2:27648)
at XMLHttpRequest.v (http://localhost:8100/build/polyfills.js:2:27893)text: "
↵
↵<!DOCTYPE html>
↵
↵<html xmlns="http://www.w3.org/1999/xhtml">
↵<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>
↵
↵</title></head>
↵<body>
↵ <form method="post" action="./getEjercicioss" id="form1">
↵<div class="aspNetHidden">
↵<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="EX/ydFzdOvrh/wJJPw/k6+GazbjGG2/Dwo2xbT4Hsp/pkl99AUP52DZ6+H4lWTQHblIBu3gHfqFGpVbL0RsTsy+i2EPqxOtS/QsOPQHG6Xc=" />
↵</div>
↵
↵<div class="aspNetHidden">
↵
↵ <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="981629C3" />
↵</div>
↵ <div>
↵ </div>
↵ </form>
↵</body>
↵</html>
↵"__proto__: Objectheaders: HttpHeaderslazyInit: ƒ ()lazyUpdate: nullnormalizedNames: Map(0) {}__proto__: Objectmessage: "Http failure during parsing for http://localhost:55531/postData.aspx/getEjercicioss"name: "HttpErrorResponse"ok: falsestatus: 200statusText: "OK"url: "http://localhost:55531/postData.aspx/getEjercicioss"__proto__: HttpResponseBaseconstructor: ƒ HttpErrorResponse(init)__proto__: Object