2012-03-30 178 views
0

我曾经有这样的代码跟我的Tomcat服务器的工作:URLFetchService与谷歌应用程序引擎

HttpRequestBase targetRequest = ...; 
HttpResponse targetResponse = httpclient.execute(targetRequest); 
HttpEntity entity = targetResponse.getEntity(); 

然而,当我与谷歌App Engine的迁移,我不能再使用此代码。所以我读了一下,发现我需要使用另一个代码来实现这一点。

所以我有这样的代码:

URLFetchService fetcher = URLFetchServiceFactory.getURLFetchService(); 
HTTPResponse targetRespose = fetcher.fetch(targetRequest); // Error 
HttpEntity entity = targetResponse.getEntity(); 

但其明显的是,有与fetcher.fetch代码中的错误。

我需要完成的工作才能使用App Engine方法实现相同的HttpEntity。任何方式来解决这个问题?

+1

什么是错误?任何错误消息? – 2012-03-30 06:15:47

回答

0

org.apache.http.HttpRequestcom.google.appengine.api.urlfetch.HTTPRequest是两个完全不同的类,来自两个不同的库,所以你不能只交换一个。

如果您想在GAE上使用Apache HttpClient,可以使用一些解决方法完成:请参阅herehere

+0

我会尽力解决这个问题,但是App引擎可能会打补丁而不是在将来工作吗?这就是为什么我试图尽可能多地迁移到App Engine的方式,无论如何我会尝试这种解决方法... – xybrek 2012-03-30 06:32:59

+0

然后使用'URLFetchService'并删除所有HttpClient类。 – 2012-03-30 07:18:25

+0

好吧,与App引擎的HttpEntity最接近的匹配是什么,如果没有替代方案,那么我可以构建HttpEntity? – xybrek 2012-03-30 07:26:06