PHP美团开放平台开发记录,美团外卖,第一步授权演示及错误提示:获取门店出错(3)解决方法
他居然没有php的sdk!也不像饿了么提供授权地址,授权完成直接把相关信息提交到回调地址。
门店映射接入参数
https://developer.meituan.com/openapi#4.1.2
数字签名sign
https://developer.meituan.com/openapi#3.2
sign签名验证
https://developer.meituan.com/admin#/sign/tool
developerId和SignKey
获取地址https://developer.meituan.com/admin#/record/account
在sign生成文档已知。
1、将请求参数中除sign外的多个键值对,根据键按照字典序排序,并按照"key1value1key2value2..."的格式拼成一个字符串。
2、将signKey拼接在1中排序后的字符串前面得到待签名字符串。
3、使用sha1算法加密待加密字符串并转为小写即为sign。
//封装sign计算
function meituan_sign($arr)
{ksort($arr);$str = '';foreach ($arr as $k=>$v) {$str .= $k . $v;}$SignKey = '';return sha1($SignKey.$str);
}
$timestamp = time();$ePoiId = 7465;//本地商户ID$businessId = 2;//外卖业务$developerId = ;$arr['charset'] = 'utf-8';$arr['developerId'] = $developerId;$arr['businessId'] = $businessId;$arr['ePoiId'] = $ePoiId;$arr['timestamp'] = $timestamp;$sign = meituan_sign($arr);$url = 'https://open-erp.meituan.com/storemap?developerId='.$developerId.'&businessId='.$businessId.'&ePoiId='.$ePoiId.'×tamp=' . $timestamp . '&sign='.$sign.'&charset=utf-8';Header("Location:$url");exit;
疑似bug
生成的授权链接是有 &charset=utf-8 参数的,打开跳转到登录页面后,参数丢失。登录的话会出现获取门店出错(3),验证签名失败。
解决方法就是手动补齐这个参数,再刷新页面进行登录。
完成操作之后,打开
门店映射回调地址测试
https://developer.meituan.com/admin#/callback/tool
授权成功后会把数据post提交到回调地址
header("Content-type:text/html; charset=utf8");$data = file_get_contents("php://input");parse_str($data, $arr);if (!empty($data) && !empty($arr)) {$sql['token'] = $arr['appAuthToken'];$sql['id'] = $arr['ePoiId'];}echo '{"data":"success"}';
PHP美团开放平台开发记录,美团外卖,第一步授权演示及错误提示:获取门店出错(3)解决方法相关推荐
- 山东大学RISC-V公共开放平台开发记录3
山东大学RISC-V公共开放平台开发记录 RISC-V编译 2 编译优化策略 2.1 RISC-V GCC工具链的(–mcmodel=)选项 目前RISC-V GCC工具链认为,在实际的情形中,一个程 ...
- 山东大学RISC-V公共开放平台开发记录5
山东大学RISC-V公共开放平台开发记录 4移植Linux操作系统 4.1移植前相应知识 4.1.1特权等级与操作系统的关系 现代操作系统(如Linux.Windows等)为了权限的区分都区分为用户态 ...
- 比亚迪智慧开放平台开发记录
比亚迪智慧开放平台开发记录 前言 注册账号 SDK和API文档下载 项目运行 安装AVD模拟器 启动AVD模拟器 BYD车机数据模拟器(ApiSimulator) 结尾 前言 最近在做一个比亚迪开发平 ...
- PHP美团外卖开放平台开发记录,IM在线通讯token获取和消息解密!By勤勤学长
token获取: 一开始我还以为,监听哪个店铺的消息,就用哪个店铺的appAuthToken获取长链接的token,但实际上,不管是使用哪个店铺的appAuthToken返回的内容是一样的,同时也意味 ...
- 美团开放平台SDK自动生成技术与实践
美团开放平台为整个美团提供了20+业务场景的开放API,为了使开发者能够快速且安全的接入美团开放平台,美团开放平台提供了多种语言的SDK来提高开发者的接入效率.本文介绍了美团开放平台如何自动生成SDK ...
- 支付宝开放平台开发助手_支付宝:如何创建和接入支付宝电脑网站支付-新手必备...
1.登录支付宝 1.打开支付宝官网,以"我是支付宝商家"用户登录 https://www.alipay.com/ 2.进入"产品中心",选择并申请支付类型 2. ...
- 微信公众开放平台开发08---纯java 实现微信开发:编写自定义菜单
微信公众开放平台开发08---纯java 实现微信开发:编写自定义菜单 微信公众开放平台开发08---纯java 实现微信开发:编写自定义菜单 技术qq交流群:JavaDream:251572072 ...
- 微信公众开放平台开发07---java servlet 实现微信开发第一步:微信服务器验证
微信公众开放平台开发07---java servlet 实现微信开发第一步:微信服务器验证 技术qq交流群:JavaDream:251572072 ------------------------- ...
- 微信公众开放平台开发06---复习一下servlet
微信公众开放平台开发06---复习一下servlet 技术qq交流群:JavaDream:251572072 ------------------------------------------- ...
最新文章
- clock函数返回负值~ (转)
- [置顶]完美简版学生信息管理系统(附有源码)管理系统
- Know more about CBO Index Cost
- java 克隆_Java实现对象克隆的方法
- 【DFS】 HDU 3298 Contestants
- 兼容浏览器的布局CSS
- 圣地牙哥『华南理工大学南加州校友会』理事会全体理事及部份校友聚会纪实...
- C语言随机读写数据文件(一)
- 计算机主板电池,如何更换计算机主板电池
- revit 转换ifc_Revit官方教程:Revit模型如何导成IFC格式?
- 罗技驱动HUB安装,安装不上,一次性解决问题
- python pywifi模块——暴力破解wifi
- ROS与PCL:在setconditionfunciton时,无法使用std::bind
- 【毕业设计】基于STM32及OpenMV的云台追踪装置
- R语言入门第一集 R语言、RTools、RStudio的简介、安装与使用
- Java设计模式(java design patterns)
- 常见的12个深度学习面试问题(提高篇)
- Python---文件写入
- element表单校验
- 七大最具影响力的大数据应用案例