프록시 서버를 사용 환경의 mBaaS 연결 방법
【Unity×mBaaS】프록시 서버를 사용 환경의 mBaaS 접속 방법
사전 준비 부탁
1. 환경 변수 설정
사용자 환경 변수 열
変数名:http_proxy
変数値:http://アドレス:ポート
変数名:https_proxy
変数値:http://アドレス:ポート
※変数名:大文字・小文字は関係ありません。
※https_proxy追加は影響ありませんが、一応設定する。


2.NCMBConnection.cs의 메소드 (_returnRequest ()) 마지막에 다음을 추가
추가 전
NCMBConnection.cs
internal HttpWebRequest _returnRequest ()
{
<省略>
req.Headers.Add (HEADER_ACCESS_CONTROL_ALLOW_ORIGIN, "*");
return req;
}
추가 후
NCMBConnection.cs
internal HttpWebRequest _returnRequest ()
{
<省略>
req.Headers.Add (HEADER_ACCESS_CONTROL_ALLOW_ORIGIN, "*");
//UNITYの実行のみ(アプリビルド以外)利用する為Define使って分ける
#if UNITY_EDITOR
//特殊なプロキシ設定追加開始
WebProxy myProxy = new WebProxy();
//環境変数HTTP_Proxy値を取得・設定する
myProxy = (WebProxy)req.Proxy;
//ユーザー認証値を設定する
myProxy.Credentials = new System.Net.NetworkCredential(Windowユーザー名, Windowパスワード);
req.Proxy = myProxy;
//特殊なプロキシ設定追加終了
#endif
return req;
}
환경 변수를 로드할 수 없는 경우
NCMBConnection.cs
#if UNITY_EDITOR
// Platform (Mac)の場合下記を利用
//特殊なプロキシ設定追加開始
WebProxy myProxy = new WebProxy();
//HTTP_Proxy値を直接設定する
Uri proxyUri = new Uri("http://ユーザー名:パスワード@プロキシのサーバアドレス:ポート");
myProxy.Address = proxyUri;
//ユーザー認証値を設定する
myProxy.Credentials = new System.Net.NetworkCredential(ユーザー名, パスワード);
req.Proxy = myProxy;
//特殊なプロキシ設定追加終了
#endif
3.Unity에서 실행
정상인 경우
로그 내용【StatusCode】:201
【Error】:

※아래의 The request timed out 에러 발생의 경우 Tip
오류 내용【StatusCode】:0
【Error】:NCMB.NCMBException: The request timed out
<발생 정보>
로그 내용
【StatusCode】:201
【Error】:

※아래의 The request timed out 에러 발생의 경우 Tip
오류 내용【StatusCode】:0
【Error】:NCMB.NCMBException: The request timed out
<발생 정보>
【StatusCode】:0
【Error】:NCMB.NCMBException: The request timed out
※아래와 같은 ProxyNameResolutionFailure 에러 발생의 경우 Tip
오류 내용【StatusCode】:0
【Error】:NCMB.NCMBException: Error: ProxyNameResolutionFailure
<발생 정보>
【StatusCode】:0
【Error】:NCMB.NCMBException: Error: ProxyNameResolutionFailure
※아래와 같은 SecureChannelFailure 에러 발생의 경우 Tip
오류 내용【StatusCode】:0
【Error】:NCMB.NCMBException: Error getting response stream (The remote server returned a 407 status code.): SecureChannelFailure
<발생 정보>
【StatusCode】:0
【Error】:NCMB.NCMBException: Error getting response stream (The remote server returned a 407 status code.): SecureChannelFailure
※아래와 같은 Signature 에러 발생의 경우 Tip
오류 내용【StatusCode】:403
【Error】:NCMB.NCMBException: Unauthorized operations for signature.
【ResponseData】:{"code":"E403002","error":"Unauthorized operations for signature."}
<발생 정보>
【StatusCode】:403
【Error】:NCMB.NCMBException: Unauthorized operations for signature.
【ResponseData】:{"code":"E403002","error":"Unauthorized operations for signature."}

Reference
이 문제에 관하여(프록시 서버를 사용 환경의 mBaaS 연결 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sensp/items/9aaf934cfb3311b4f179텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)