2017-03-09 4 views
2

現在、HTTPS/SSLの問題が発生しています。私はCodename OneのWindows 10/Java 8 v121で開発しています。コードネームワンでHTTPS(SSL)接続が発生する

HTTP(SSLなし)接続を呼び出そうとすると、[https://www.codenameone.com/blog/ios-http-urls.html]]への参照で拒否されます。私はその呼び出しがサーバーに衝突するとは思わない。私は "build hint"をcodenameone_settings.propertiesファイルに含めようとしましたが、役に立たなかった。

次に、私は自己署名証明書を使用しようとしましたが、それは「によって引き起こさ:sun.security.provider.certpath.SunCertPathBuilderException:要求されたターゲットへの有効な証明書パスを見つけることができない」生成された例外を。だから、それから私はhttps://www.sslforfree.com/] [から自由証明書を持って、それはまだSAME例外メッセージを引き起こしている

...私は自分の証明書が自己署名されたため、エラーが発生していたと思ったが、そうではありませんでした。しかし、このライブラリはFirefoxのブラウザでうまく動作します。また、私のFirefoxブラウザで正常に動作するようにテストされた署名付き証明書ドメイン名のためにSimple DNS Plus(Windows用)を使用しています(つまり、Insecure Connectionメッセージが表示されていないサーバーに正しくヒットします)。

私はどのように理解したいと思います: - (コードネームワンシミュレータで)iOSのために働くための「ヒントを構築する」ので、それは、HTTP(SSLなし)接続を呼び出して取得します

  1. Java例外を解決する方法。

ありがとう!

+0

'https'の代わりに' http'を呼び出すと、何を得ましたか? – Diamond

+0

次の出力が表示されます。「警告:Appleはhttp:// localhost/accounts/loginに接続しようとしたアプリケーションからhttp URL接続を受け入れなくなりました。詳細はhttps://www.codenameone.com/blog/をご覧ください。 ios-http-urls.html " – ikevin8me

+1

私の答えを確認してください – Diamond

答えて

3

URLを開発段階で使用して公開する準備ができたら、本物のSSL証明書を購入し、httphttpsに変更してください。暗号化されていないWebサービスの呼び出しにより、中間者の人物攻撃に対して脆弱になるため、それはあなたのためのものです。

このビルドヒントを追加し、DEV段階でiOSのあなたのhttpの仕事をするために:

ios.plistInject=<key>NSAppTransportSecurity</key><dict><key>NSAllowsArbitraryLoads</key><true/></dict><key>CFBundleURLTypes</key><array><dict><key>CFBundleURLName</key><string>com.mycompany.myapp</string></dict><dict><key>CFBundleURLSchemes</key><array><string>MyApp</string></array></dict></array> 

私はhereに答え以前に同様の質問がありました。

+1

ありがとう、バディ! 「ビルドヒント」が機能しています。 (私は最後にpakcageの名前とアプリ名を変更しなかった) – ikevin8me

関連する問題