2017-11-15 7 views
2

IOS 11의 상태 표시 줄 문제를 해결하기 위해 IONIC 팀은 최근 릴리스에서 WKWebview가 기본값으로 사용되었습니다. 그때 이후로 나는 CORS 문제를 겪고 있습니다 ... 나는 이것을 해결하기 위해 여러 가지 방법을 시도했지만 그 중 아무 것도 효과가 없었습니다. 네이티브 HTTP 플러그인은 CORS 문제를 해결하는 것으로 보이지만 XML 콘텐츠 유형에서는 작동하지 않습니다. 또한 다음과 같은 플러그인을 사용하려고 : https://github.com/sneas/ionic-native-http-connection-backendIONIC 3 - WKWebview CORS issues

을하지만 난 여전히 다음과 같은 오류가 점점 오전 : enter image description here

코드 :

public sendRequest(sufix, json) {   

    console.log(json); 
    let headers = new Headers({ 
     'Content-Type': 'application/xml', 
     'livefacilities-apptoken': APPTOKEN 
    }); 
    let options = new RequestOptions({ 'headers': headers }); 
    let xml = this.jsonToXml(json); 
    console.log(xml); 
    return this.http.post(URL+sufix, xml, options) 
     .timeout(TIMEOUT_REQUEST*1000) 
     .do(this.logResponse) 
     .map(this.extractData) 
     .catch(this.handleError); 

} 

사람이 제발 도와 드릴까요?

답변

0

사실 이온 성 또는 코드바 프레임 워크는 사용하지 않습니다. 하지만 난 미친 방법이지만 WKWebview에 CORS 문제에 대한 해결책이 있습니다. 하하. 다른 문제에 대한 내 의견보기. IOS - CORS in WKWebView from local HTML file

0

항상 API/웹 서비스 파일에 다음과 같은 헤더를 추가하고 나를 위해 일했다 해결책 :

header('Access-Control-Allow-Origin: *'); 
header("Access-Control-Allow-Credentials: true"); 
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS'); 
header('Access-Control-Max-Age: 1000'); 
header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token , Authorization'); 

나는 또한 우리의 응용 프로그램에서 동일한 문제에 직면, 당신은 이온 사용하여 해결할 수 있습니다 네이티브 http 플러그인을 사용하고 일반 http.post가 아닌 js에서이 플러그인 HTTP.post 메소드를 사용해야합니다.

ionic의 공식 문서 : "CORS를 서버에 구현하거나 구성 할 수없는 경우 원시 코드를 사용하여 HTTP 요청을"프록시 "할 수있는 네이티브 플러그인이 있으므로 CORS를 완전히 무시할 수 있습니다 "

시도하십시오.

+0

안녕하세요 Krish, 답장을 보내 주셔서 감사합니다. JSON이 아닌 XML을 사용하면이 문제를 어떻게 해결할 수 있습니까? 내가 아는 한, 네이티브 플러그인은 JSON 만 지원합니다. 맞습니까? –

+0

안녕하세요 @ PedroDurek이 비행 전 응답 문제를 해결하기위한 또 다른 해결책은 API/WEB SERVICE 파일에 다음 헤더를 추가하는 것입니다. \t header ('Access-Control-Allow-Origin : *'); 헤더 ("Access-Control-Allow-Credentials : true"); 헤더 ('액세스 제어 허용 메소드 : GET, PUT, POST, DELETE, OPTIONS'); 헤더 ('Access-Control-Max-Age : 1000'); 헤더 ('액세스 제어 허용 헤더 : 발신지, 콘텐츠 유형, X-Auth- 토큰, 인증'); – Krish