http native plugin을 사용하여 ionic 2 앱에서 HTTP put
요청을 보내려고하지만, 의사가 보낸 메시지에서 post
과 get
요청 방법 만 구현되는 것을 볼 수 있습니다. 먼저ionic2 native http 플러그인을 사용하여 HTTP PUT 요청을 보내는 방법은 무엇입니까?
: 내가 HTTP 메소드 delete
및 put
실제로 구현되지 않은 경우 (필자는 문서에 적절한 장소에보고되지 않을 수 있습니다로) 알고 싶습니다.
두 번째 : 이들이 구현되지 않은 경우 이온 2 앱에서 put
및 delete
을 어떻게 생성 할 수 있습니까? 저수준에서 플러그인 네이티브/라이브러리 코드를 수정하지 않아도 가능합니까?
미리 감사드립니다.
업데이트 1 : 그러나 2016년 9월에서 지금 2017년 4월은 마스터와 병합되지 될 때까지, put
, delete
및 postJSON
구현 (https://github.com/wymsee/cordova-HTTP/pull/105)에 대한 풀 (pull) 요청이 있습니다.
업데이트 2 : 먼저 @Jamil Hijjawi에게 감사의 말을 전합니다. 그것은 그 문제를 해결했습니다. 하지만 CORS를 해결하기 위해 솔루션 2에 서버 구성이 필요하다는 점을 말씀 드리고자합니다. 그래서 첫 번째 옵션을 선택했습니다. 또한 "이오 네이티브 (Ionic Native)"코드가 아닌 플러그 - 인을 사용하는 방법을 설명하는 멋진 기사 https://www.joshmorony.com/using-cordova-plugins-in-ionic-2-with-ionic-native/이 있습니다.
이오닉 2에서 비 이온 네이티브 플러그인을 사용하는 방법은 모든 코르도바 프로젝트에서 사용하는 방법과 동일하지만 다음과 같은 단점을 지적하고 싶습니다. 플러그인의 설명서에 사용해야한다고 나와 있습니다. 그러나 TypeScript로 인해 몇 가지 문제가 발생하기 때문에 몇 가지 추가 단계가 필요합니다.
은 더 나아가 우리가 declarations.d.ts
그렇게 타이프 라이터가 알고있는 곳과 같은에서 플러그인에 의해 전 세계적으로 수출 변수 cordovaHTTP
를 선언 할 필요가 있음을 설명한다. 일단 선언되면 의존성 삽입이 필요하지 않습니다. 다음은 임의의 구성 요소 기능에서 사용한 코드 단편입니다.
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
constructor(
public navCtrl: NavController,
private _platform: Platform
) {
this._platform.ready().then(() => {
// ========== We need this part
cordovaHTTP.put('http://192.168.0.5:8081/test-route', {
really: "Yea!"
}, {}, (res: any) => {
console.log(res);
}, (err: any) => {
console.log(err);
});
// ========== till here, as for the example of usage
});
}
}
이 응답 해 주셔서 감사합니다,하지만 난 데 선언 부분에 문제가 있습니다. declarations.d.ts에 cordovaHTTP 네임 스페이스를 선언하는 방법? 몇 가지 코드 스 니펫을 추가 할 수 있습니까? – Musa
당신은 환영합니다.'declare var cordovaHTTP : any;'를'declarations.d.ts'에 추가하십시오. –
나는 똑같이하고 있습니다.하지만 HTTP가 정의되어 있지 않습니다. 내가 정의 파일에 몇 가지 JS 파일을 링크해야 할 것 같아요, 그러나 – Musa