百度搜索API v3版本与soap
技术文档请参考http://dev2.baidu.com/docs.do?product=2#page=File,和http://dev2.baidu.com/docs.do?product=2#page=file1,http://dev2.baidu.com/docs.do?product=2#page=Request_Header
因为在每次访问API时,您需要提供您的token(权限代码)以及要操作的用户名和密码来进行权限认证。
那么如何验证?请看下面的代码:
class Baidu_api {
//soap连接标识
private $soap_client;
public function __construct($service_name)
{
$this->soap_client = new SoapClient ( URL . '/sem/sms/v3/' . $service_name . '?wsdl', array ('trace' => TRUE, 'encoding' => 'utf-8') );
//帐号信息
$sh_param = array ('username' => USERNAME, 'password' => PASSWORD, 'token' => TOKEN );
$headers = new SoapHeader ( 'http://api.baidu.com/sem/common/v2', 'AuthHeader', $sh_param );
$this->soap_client->__setSoapHeaders ( array ( $headers ) );
}
//取得公开的函数
public function get_functions()
{
return $this->soap_client->__getFunctions();
}
//取得公开函数的参数
public function get_types()
{
return $this->soap_client->__getTypes();
}
//执行函数接口
public function soap_call($function_name, array $arguments, array &$output_headers)
{
return $this->soap_client->__soapCall($function_name, $arguments, NULL, NULL, $output_headers);
}
public function get_last_request()
{
return $this->soap_client->__getLastRequest();
}
public function get_last_response()
{
return $this->soap_client->__getLastResponse();
}
}
construct部份就是验证。
如何请求对应的接口,举个例子:在reportservice中的接口getProfessionalReportId
function get_professional_report_id($config)
{
$param = array(
'getProfessionalReportIdRequest' => array(
'reportRequestType' => $config
)
);
$output = array();
$output_response = $this->client->soap_call('getProfessionalReportId', $param, $output);
//保存记录
$this->baidu_log_mdl->write_log('getProfessionalReportId||' . serialize($output));
if(isset($output_response->reportId)) return $output_response->reportId;
return FALSE;
}
百度搜索API v3版本与soap的更多相关文章
- jsonp跨越请求百度搜索api 实现下拉列表提示
题目来源: 最近在做百度IFE前端技术学院的题,然后有一题就是模拟百度搜索智能提示.题目是开源的,稍后给出地址. 因为博主没学过后端啊,欲哭无泪,所以不能实现后端模糊搜索,那如果前端ajax纯粹请求一 ...
- Java中的微信支付(1):API V3版本签名详解
1. 前言 最近在折腾微信支付,证书还是比较烦人的,所以有必要分享一些经验,减少你在开发微信支付时的踩坑.目前微信支付的API已经发展到V3版本,采用了流行的Restful风格. 今天来分享微信支付的 ...
- easy_install django==1.4.2_百度搜索
easy_install django==1.4.2_百度搜索 安装指定版本的django
- 百度GIS API使用
按照惯例,先来一段"Hello World"级别的直观的效果 实现效果: 实现代码: (WEB工程下直接运行即可) <!DOCTYPE html> <html&g ...
- Java中的微信支付(2):API V3 微信平台证书的获取与刷新
1. 前言 在Java中的微信支付(1):API V3版本签名详解一文中胖哥讲解了微信支付V3版本API的签名,当我方(你自己的服务器)请求微信支付服务器时需要根据我方的API证书对参数进行加签,微信 ...
- 【百度地图API】JS版本的常见问题
1.请问如何将我的店铺标注在百度地图上?我是否可以做区域代理?在百度地图上标注是否免费? 答复: 这里只负责API的技术咨询,不解决任何地图标注问题.在百度地图上标注自己公司,即气泡标注业务.该业务已 ...
- Arcgis for Javascript API下类似于百度搜索A、B、C、D marker的实现方式
原文:Arcgis for Javascript API下类似于百度搜索A.B.C.D marker的实现方式 多说无益,首先贴两张图让大家看看具体的效果: 图1.百度地图搜索结果 图2.Arcgis ...
- 通过百度地图API实现搜索地址--第三方开源--百度地图(三)
搜索地址功能是建立在能够通过百度地图API获取位置的基础上 通过百度地图定位获取位置详情:http://www.cnblogs.com/zzw1994/p/5008134.html package c ...
- 百度音乐搜索API介绍
百度音乐搜索API的请求地址如下: [html] view plaincopy http://box.zhangmen.baidu.com/x?op=12&count=1&title= ...
随机推荐
- Codeforces 633D
题意: 给定n,和一个长度为n的序列. 让你在这n个数中找长度尽可能长的fib数列. 思路: 这题的数字是在1e9范围内的,所以最长的可能存在的fib数列官方的解释是90左右.有一种情况除外,就是0的 ...
- C++ primer 练习9.49
如果一个字母延伸到中线之上,如d或f,则称其有上出头部分.如果一个字母延伸到中线之下,如p或g, 则称其有下出头部分.编写程序,读入一个单词,输出最长的即不包含上出头部分,也不包含下出头部分单 词. ...
- Android GridView 指定行数,动态行宽,占满空间
有时间我们需要 使用GridViw 让它占满父控件,例: 特别是在适配的时间比较麻烦,在不同的机型上可能分出下,下面空的太多,或有滚动条问题,; 下面说一下实现思路: 首先,设置GridView 为三 ...
- 用Asroute解决复杂状态切换问题
项目地址:https://github.com/boycy815/asroute 首先明确几个概念 状态: 很多情况下,一个复杂的UI组件可能会有很多种不同的“状态”,不同的“状态”下组件本身对外界会 ...
- EXT学习之——Ext下拉框绑定以及级联写法
/*******步骤有四个,缺一不可*********/ function () {xxxxxx = Ext.extend(construct, {InitControl: function () { ...
- 【HTML/XML 7】CSS层叠样式表
导读:上篇博客说到用XSL去实现XML文档的表现形式的美化,那么另外一种方式就是CSS的使用.本篇博客系统的介绍CSS,下篇博客,将系统的介绍XSL. 一.CSS的发展历史 1996年,层叠样式表(C ...
- ionic cordova social media sharing plugin
https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin.git 从上面的连接下载 插件 1.肯定是要加入 下面的那个文件的吖 从 ...
- HTML转义字符集合
readme:这次可以不readme了,因为这个是我copy过来的~ ISO Latin-1字符集: — 制表符Horizontal tab — 换行Line feed — 回车Carriage ...
- JS 和 CSS 的位置对其他资源加载顺序的影响
JS 和 CSS 在页面中的位置,会影响其他资源(指 img 等非 js 和 css 资源)的加载顺序,究其原因,有三个值得注意的点: JS 有可能会修改 DOM. 典型的,可能会有 document ...
- css遇到的问题
1.屏幕三部分自适应居中?(js没奏效) 2.背景透明内容也透明?