How can I solve this problem? Could you please help me. Thank you. I ran into a similar error which turned out to be a typo in the HTML within the render function, but that doesn't seem to be the case here.
More confusingly, I rolled the code back to an earlier, known-working version and I'm still getting the error.
error message;
SyntaxError: Unexpected token < in JSON at position 1
at JSON.parse (<anonymous>)
at Response.Body.json (http://localhost:8100/build/vendor.js:67304:25)
at SafeSubscriber._next (http://localhost:8100/build/main.js:358:29)
at SafeSubscriber.__tryOrUnsub (http://localhost:8100/build/vendor.js:32821:16)
at SafeSubscriber.next (http://localhost:8100/build/vendor.js:32768:22)
at Subscriber._next (http://localhost:8100/build/vendor.js:32708:26)
at Subscriber.next (http://localhost:8100/build/vendor.js:32672:18)
at XMLHttpRequest.onLoad (http://localhost:8100/build/vendor.js:67797:38)
at t.invokeTask (http://localhost:8100/build/polyfills.js:3:15660)
at Object.onInvokeTask (http://localhost:8100/build/vendor.js:4973:33)
providers/auth-service.ts
import { Injectable } from '@angular/core';
import { Http, Headers } from '@angular/http';
import 'rxjs/add/operator/map';
let apiUrl = "http://localhost/PHP-Slim-Restful/api/";
@Injectable()
export class AuthServiceProvider {
constructor(public http: Http) {
console.log('Hello AuthService Provider');
}
postData(credentials, type){
return new Promise((resolve, reject) =>{
let headers = new Headers();
this.http.post(apiUrl+type, JSON.stringify(credentials), {headers: headers}).
subscribe(res =>{
resolve(res.json());
}, (err) =>{
reject(err);
});
});
}
}
signup.ts
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { TabsPage } from '../tabs/tabs';
import { LoginPage } from '../login/login';
import { AuthServiceProvider } from '../../providers/auth-service/auth-service';
import 'rxjs/add/operator/map';
@IonicPage()
@Component({
selector: 'page-signup',
templateUrl: 'signup.html',
})
export class SignupPage {
responseData: any;
userData = { "username": "", "password": "", "email": "", "name": "" };
constructor(
public navCtrl: NavController,
public navParams: NavParams,
public authService: AuthServiceProvider) {
}
ionViewDidLoad() {
}
signup() {
//api connections
this.authService.postData(this.userData, "signup")
.then((result) => {
this.responseData = result;
console.log(this.responseData);
localStorage.setItem('userData', JSON.stringify(this.responseData))
this.navCtrl.push(TabsPage);
}, (err) => {
//connection failed message
});
}
login() {
this.navCtrl.push(LoginPage);
}
}
signup html
<!--
Generated template for the SignupPage page.
See http://ionicframework.com/docs/components/#navigation for more info on
Ionic pages and navigation.
-->
<ion-header>
<ion-navbar>
<ion-title>Kayıt OL</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
<ion-list>
<ion-item>
<ion-label floating>Adınız</ion-label>
<ion-input type="text" [(ngModel)]="userData.name"></ion-input>
</ion-item>
<ion-item>
<ion-label floating>Mail Adresiniz</ion-label>
<ion-input type="text" [(ngModel)]="userData.email"></ion-input>
</ion-item>
<ion-item>
<ion-label floating>Kullanıcı Adı</ion-label>
<ion-input type="text" [(ngModel)]="userData.username"></ion-input>
</ion-item>
<ion-item>
<ion-label floating>Şifre</ion-label>
<ion-input type="password" [(ngModel)]="userData.password"></ion-input>
</ion-item>
</ion-list>
<div padding>
<button ion-button block (click)="signup()">Üye Ol</button>
<a href="#" (click)="login()">Login Page</a>
</div>
</ion-content>
100%此错误是由于api响应错误引起的,请检查您的api响应到日志中
From api folder, in index.php
, juste delete or comment this line " echo $email_check.'<br/>'.$email;
" at 83 position and this line " echo ' Here';
" at 87 position
justification: A Second parameter of localStorage.setItem
in signup.ts
file MUST BE A JSON FORMAT But the api send
"<br/>email@gmail.comhere{"userData": {"user_id":"4","name":"My Name here",
"email":email@gmail.com","username":"myusernamehere",
"token":"c0045c0d75e48f62919b1c0d16461af854049615df2c0d9a7bd755e9679e662a"}}"
And this is not a json format
It work fine for me
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.