Skip to content

Commit

Permalink
#356 修复QrCodeRequestExecutor类MimeType比较的bug
Browse files Browse the repository at this point in the history
  • Loading branch information
binarywang committed Oct 18, 2017
1 parent 64f0e7c commit 0f007d9
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,8 @@ public File execute(String uri, AbstractWxMaQrcodeWrapper ticket) throws WxError
InputStream inputStream = InputStreamResponseHandler.INSTANCE.handleResponse(response);) {
Header[] contentTypeHeader = response.getHeaders("Content-Type");
if (contentTypeHeader != null && contentTypeHeader.length > 0
&& ContentType.APPLICATION_JSON.getMimeType().equals(contentTypeHeader[0].getValue())) {
&& ContentType.APPLICATION_JSON.getMimeType()
.equals(ContentType.parse(contentTypeHeader[0].getValue()).getMimeType())) {
String responseContent = Utf8ResponseHandler.INSTANCE.handleResponse(response);
throw new WxErrorException(WxError.fromJson(responseContent));
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package me.chanjar.weixin.mp.util.http;

import me.chanjar.weixin.common.bean.result.WxError;
import me.chanjar.weixin.common.exception.WxErrorException;
import me.chanjar.weixin.common.util.http.RequestExecutor;
import me.chanjar.weixin.common.util.http.RequestHttp;
import me.chanjar.weixin.mp.bean.result.WxMpQrCodeTicket;
Expand All @@ -21,7 +23,7 @@ public QrCodeRequestExecutor(RequestHttp requestHttp) {
this.requestHttp = requestHttp;
}

public static RequestExecutor<File, WxMpQrCodeTicket> create(RequestHttp requestHttp) {
public static RequestExecutor<File, WxMpQrCodeTicket> create(RequestHttp requestHttp) throws WxErrorException {
switch (requestHttp.getRequestType()) {
case APACHE_HTTP:
return new ApacheQrCodeRequestExecutor(requestHttp);
Expand All @@ -30,8 +32,7 @@ public static RequestExecutor<File, WxMpQrCodeTicket> create(RequestHttp request
case OK_HTTP:
return new OkhttpQrCodeRequestExecutor(requestHttp);
default:
//TODO 需要优化,最好抛出异常
return null;
throw new WxErrorException(WxError.newBuilder().setErrorMsg("不支持的http框架").build());
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,8 @@ public File execute(String uri, WxMpQrCodeTicket ticket) throws WxErrorException
Header[] contentTypeHeader = response.getHeaders("Content-Type");
if (contentTypeHeader != null && contentTypeHeader.length > 0) {
// 出错
if (ContentType.TEXT_PLAIN.getMimeType().equals(contentTypeHeader[0].getValue())) {
if (ContentType.TEXT_PLAIN.getMimeType()
.equals(ContentType.parse(contentTypeHeader[0].getValue()).getMimeType())) {
String responseContent = Utf8ResponseHandler.INSTANCE.handleResponse(response);
throw new WxErrorException(WxError.fromJson(responseContent));
}
Expand Down

0 comments on commit 0f007d9

Please sign in to comment.