FetchUrl服务

更新时间:2015/09/18 访问次数:14846

FetchUrl服务简介

TAE中FetchUrl服务提供基于http协议的网页抓取。目前TAE系统中有全局 FetchUrl的白名单。如果期望的URL不在全局白名单中,可自主申请App粒度的URL白名单。值得注意的是,HTTP请求必须使用FetchUrl,之外的类似HttpClient之类的API不被允许。

FetchUrl服务API

在python中使用云服务 需要引入云服务助手对象 

from com.alibaba.appengine.python import PythonServiceHelper

openServiceHelper = PythonServiceHelper()

获取FetchUrl服务对象

fetchUrlService= openServiceHelper.getFetchUrlService ()

fetchUrlService.get(url) 方法

1

2

3

4

5

6

7

8

9

   /**

* 对指定的url,发起HTTP GET请求,获取HTTP相应的内容

* @param url HTTP URL地址  不能为null

* @return 响应内容

* @throws FetchUrlNotAllowedException url为非HTTP协议、非白名单域名

* @throws FetchUrlException           操作出错,如连接FetchUrl Server失败

* @throws NullPointerException        url参数为null

*/

fetchUrlService.post(url,params) 方法

1

2

3

4

5

6

7

8

9

10

   /**

* @param url               HTTP URL地址  不能为null

* @param requestParameters 请求参数为dict类型如果为null,则表示空参数

* @return 响应内容

* @throws FetchUrlNotAllowedException url为非HTTP协议、非白名单域名

* @throws FetchUrlException           出错,如连接FetchUrl Server失败

* @throws NullPointerException        url参数为null

*/

* 对指定的url,发起HTTP POST请求,获取HTTP相应的内容,请求参数编码默认为 UTF-8

fetchUrlService.post(url,params,charset) 方法

1

2

3

4

5

6

7

8

9

10

11

   /**

* 对指定的url,发起HTTP POST请求,获取HTTP相应的内容

* @param url               HTTP URL地址  不能为null

* @param requestParameters 请求参数Map如果为null,则表示空参数

* @param parameterCharset  请求参数的字符编码,取值范围 UTF-8 | GBK | ISO-8859-1,默认值为 UTF-8

* @return 响应内容

* @throws FetchUrlNotAllowedException url为非HTTP协议、非白名单域名

* @throws FetchUrlException           出错,如连接FetchUrl Server失败

* @throws NullPointerException        url参数为null

*/

FetchUrl服务域名限制

为了规范TAE中isv对淘宝站内站外的域名访问情况,后面FetchUrl服务的全局白名单只留下下面四个:

api.weibo.com

eco.taobao.com

login.taobao.com

oauth.taobao.com 

其它需要访问的域名配置到对应应用的白名单中,需要isv反馈一下哪个应用访问了哪个域名,只要是合理的我们就会给他配置到对应应用的白名单里面。

反馈格式:isv淘宝nick, TAE应用名(域名) ,需要访问的非公共白名单域名,应用场景。按照格式提交问题到://open.taobao.com/support/create_or_edit_problem.htm?spm=0.0.0.0.y72ndX

针对优站业务大家要申请调用白名单以外的域名,请发邮件( lingyou@taobao.com)申请,邮件中请说明优站域名,要通过FetchURL调用的域名,以及使用场景。灵佑直接负责处理申请,1-3个工作日给大家邮件回复,其他疑问直接可以给灵佑发旺旺。

FetchUrl服务使用示例

from com.alibaba.appengine.python import PythonServiceHelper

openServiceHelper = PythonServiceHelper()   

fetchUrlService = openServiceHelper.getFetchUrlService()

res = fetchUrlService.get("http://www.taobao.com") 

parameter = {"username": "tae", "password":"jae"}

res = fetchUrlService.post("https://login.taobao.com/member/login.jhtml", parameter)

FAQ

关于此文档暂时还没有FAQ
返回
顶部