I는 Microsoft 가장자리에 다음과 같은 자바 스크립트 오류를 얻고을 지원하지 않습니다개체 속성 또는 메서드 'JSON'servicestack 클라이언트 HTTP 포스트
"를 속성 또는 메서드 'JSON'를 지원하지 않는 객체"나는이 마이크로 소프트 에지 자바 스크립트 오류가 ServiceStack Typescript JsonServiceClient에서 오는 것으로 의심,이 NPM 패키지의 소스 코드는 여기에
here는 타이의 조각입니다 찾을 수 있습니다 나는 ServiceStack JsonServiceClient 여기에 마이크로 소프트 에지
그리고이 전체 타이프 스크립트 코드가 브라우저에서 자바 스크립트 버그 브라우저 간 호환성을 가지고 의심스러운 생각
var request = new Authenticate();
request.provider = "credentials";
request.userName = userName;
request.password = password;
this.client.post(request)
.then(res => {
if (res.bearerToken != null) {
this.tokenService.refreshToken = res.refreshToken;
this.tokenService.bearerToken = res.bearerToken;
resolve(true);
}
resolve(false);
}, msg => {
console.log('login failed', msg);
reject(msg);
})
});
:에서 ServiceStack JsonServiceClient를 사용하여 pescript 코드, 오류가오고 있었다 파일 :
는import { Injectable } from '@angular/core';
import { JsonServiceClient } from 'servicestack-client';
import { Authenticate, AuthenticateResponse } from './dtos';
import { ApiHelper } from '../../@core/api.helper'
import { TokenService } from './token.service'
import { AppModule } from '../../app.module';
@Injectable()
export class AuthService {
private baseUrl: string;
private client: JsonServiceClient;
private tokenService: TokenService;
constructor(private apiHelper: ApiHelper) {
this.baseUrl = apiHelper.getServiceUrl(apiHelper.ServiceNames.auth);
this.client = new JsonServiceClient(this.baseUrl);
this.tokenService = AppModule.injector.get(TokenService);
}
/**
* @method authenticate
* @param username
* @param password
* @return {Promise<Boolean>}
*/
authenticate(userName: string, password: string): Promise<Boolean> {
let promise = new Promise<Boolean>((resolve, reject) => {
var request = new Authenticate();
request.provider = "credentials";
request.userName = userName;
request.password = password;
this.client.post(request)
.then(res => {
if (res.bearerToken != null) {
this.tokenService.refreshToken = res.refreshToken;
this.tokenService.bearerToken = res.bearerToken;
resolve(true);
}
resolve(false);
}, msg => {
console.log('login failed', msg);
reject(msg);
})
});
return promise;
}
}