Fli*_*vid 5 ssl android web-services laravel retrofit
我有一个服务,我可以毫无问题地连接我的 android 应用程序,我在我的开发服务器上工作。但是当服务在生产服务器中时,会出现如下图所示的错误。
和
在安卓中使用
compile 'com.squareup.retrofit:retrofit:1.9.0'
compile 'com.squareup.okhttp:okhttp:2.4.0'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.0.0'
@GET("/api/account/{accountId}/balance")
public void getBalanceAccount(
@Path("accountId") int accountId,
CancelableCallback<Balance> balanceCancelableCallback
);
public Gson providesGson() {
return new GsonBuilder()
.registerTypeAdapter(Date.class, new DateTypeAdapter())
.create();
}
private OkHttpClient myOkHttpClient(){
OkHttpClient okHttpClient = new OkHttpClient();
okHttpClient.setReadTimeout(70 * 1000, TimeUnit.MILLISECONDS);
okHttpClient.setConnectTimeout(70 * 1000, TimeUnit.MILLISECONDS);
return okHttpClient;
}
public RestAdapter providesRestAdapter(Gson gson) {
return new RestAdapter.Builder()
.setClient(new OkClient(myOkHttpClient()))
.setLog(new AndroidLog("Retrofit"))
.setLogLevel(BuildConfig.DEBUG ? RestAdapter.LogLevel.FULL : RestAdapter.LogLevel.NONE)
.setEndpoint(BuildConfig.BASE_URL_STYLE)
.setConverter(new GsonConverter(gson))
.setRequestInterceptor(new SessionRequestInterceptorGetTokenAPI())
.build();
}
Run Code Online (Sandbox Code Playgroud)
找了半天想解决。但没有成功,任何意见都可以提供帮助。
谢谢你
乌鲁尔
private OkHttpClient myOkHttpClient(){
try{
OkHttpClient okHttpClient = new OkHttpClient();
okHttpClient.setReadTimeout(70 * 1000, TimeUnit.MILLISECONDS);
okHttpClient.setConnectTimeout(70 * 1000, TimeUnit.MILLISECONDS);
final TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() {
@Override
public void checkClientTrusted(
java.security.cert.X509Certificate[] chain,
String authType) throws CertificateException {
}
@Override
public void checkServerTrusted(
java.security.cert.X509Certificate[] chain,
String authType) throws CertificateException {
}
@Override
public java.security.cert.X509Certificate[] getAcceptedIssuers() {
return null;
}
} };
final SSLContext sslContext = SSLContext.getInstance("SSL");
sslContext.init(null, trustAllCerts, new java.security.SecureRandom());
// Create an ssl socket factory with our all-trusting manager
final SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory();
okHttpClient.setSslSocketFactory(sslSocketFactory);
return okHttpClient;
}catch (Exception e){
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
tks
| 归档时间: |
|
| 查看次数: |
1636 次 |
| 最近记录: |