标准API文档

一、文档阅读

文档在线阅读:美团酒店平台对接文档

注:点击链接,请选择侧边栏的酒店,继续阅读!

二、城市列表

城市id列表下载:cityid

三、API文档说明

1.名词解释

2.对接流程

参考《美团酒店平台接入参考手册》(简称:参考手册)、对接样例代码,参考手册和样例代码找平台运营人员获取。

3.美团认证

对接方对平台每次Http请求都需要美团认证,认证逻辑如下:
Http请求要加上两个请求头(header):

Authorization: 请求认证
Date: 请求时间
Date采用美国国家标准时间格式,值为当前系统时间。例如:
 Fri, 17 Jun 2016 09:42:55 GMT

Authorization的生成规则是:

 Authorization = MWS " "+partnerId":"+ signature 

partnerId和signature是变量,partnerId是分配的,signature是生成的。
signature由string_to_sign和clientSecret加密而成。

 string_to_sign=request.getMethod().toUpperCase() +
                                        " "+ request.getURI().getPath() + "\n" +Date

生成签名算法是HmacSHA1。 例如:

MWS 101:iPqkkqYsizDOTaLo+lPX4bPgYF8=

这个例子中,partnerId是101,签名是iPqkkqYsizDOTaLo+lPX4bPgYF8=
partnerId和clientSecret由平台提供,具体实现可以参考样例代码。

注:具体实现可以参考样例代码。美团认证代码示例

4.数据加密

返回结果采用高级加密标准AES进行加密后传输,对接方需要对返回结果进行解密。
秘钥生成:

  //KEY_ALGORITHM为加密算法, keyValue为共享秘钥
Key key = new SecretKeySpec(keyValue, KEY_ALGORITHM);
Cipher c = Cipher.getInstance(KEY_ALGORITHM);
c.init(Cipher.ENCRYPT_MODE, key);

加密:

  //encryptedValue加密后结果串
byte[] encVal = c.doFinal(data.getBytes());
String encryptedValue = new BASE64Encoder().encode(encVal);

解密:

  //decryptedValue解密后结果串
byte[] decordedValue = new BASE64Decoder().decodeBuffer(encryptedData);
byte[] decValue = c.doFinal(decordedValue);
String decryptedValue = new String(decValue);

注:具体实现可以参考样例代码。加密解密代码示例

5.请求频率

所有接口均有请求限速,当对接方请求超过限速时将提示“接口访问频率超出限制”,此时可联系平台运营人员进行限速调整。

6.系统地址

生产环境地址:https://openplatform-hotel.meituan.com。
WEB站点:https://openplatform-hotel.meituan.com,可进行接口在线测试。

返回
顶部