当前位置: 首页 > news >正文

化工企业常用推广网站php网站地图

化工企业常用推广网站,php网站地图,深圳东门大厦,鲜花网站建设的目标接入概述 接入微信公众平台开发#xff0c;开发者需要按照如下步骤完成#xff1a; 1、填写服务器配置 2、验证服务器地址的有效性 3、依据接口文档实现业务逻辑 下面详细介绍这3个步骤。 第一步#xff1a;填写服务器配置 登录微信公众平台官网后#xff0c;在公众平台官网… 接入概述 接入微信公众平台开发开发者需要按照如下步骤完成 1、填写服务器配置 2、验证服务器地址的有效性 3、依据接口文档实现业务逻辑 下面详细介绍这3个步骤。 第一步填写服务器配置 登录微信公众平台官网后在公众平台官网的开发-基本设置页面勾选协议成为开发者点击“修改配置”按钮填写服务器地址URL、Token和EncodingAESKey其中URL是开发者用来接收微信消息和事件的接口URL。Token可由开发者可以任意填写用作生成签名该Token会和接口URL中包含的Token进行比对从而验证安全性。EncodingAESKey由开发者手动填写或随机生成将用作消息体加解密密钥。 同时开发者可选择消息加解密方式明文模式、兼容模式和安全模式。模式的选择与服务器配置在提交后都会立即生效请开发者谨慎填写及选择。加解密方式的默认状态为明文模式选择兼容模式和安全模式需要提前配置好相关加解密代码详情请参考消息体签名及加解密部分的文档。   第二步验证消息的确来自微信服务器 开发者提交信息后微信服务器将发送GET请求到填写的服务器地址URL上GET请求携带参数如下表所示 参数 描述 signature 微信加密签名signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。 timestamp 时间戳 nonce 随机数 echostr 随机字符串 开发者通过检验signature对请求进行校验下面有校验方式。若确认此次GET请求来自微信服务器请原样返回echostr参数内容则接入生效成为开发者成功否则接入失败。加密/校验流程如下 1将token、timestamp、nonce三个参数进行字典序排序 2将三个参数字符串拼接成一个字符串进行sha1加密 3开发者获得加密后的字符串可与signature对比标识该请求来源于微信 检验signature的PHP示例代码 private function checkSignature() {         $signature $_GET[signature];         $timestamp $_GET[timestamp];         $nonce $_GET[nonce];          $token TOKEN; $tmpArr array($token, $timestamp, $nonce); sort($tmpArr, SORT_STRING); $tmpStr implode( $tmpArr ); $tmpStr sha1( $tmpStr ); if( $tmpStr $signature ){ return true; }else{ return false; } } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 ?php /**   * wechat php test   */ //define your token define(TOKEN, weixin); $wechatObj  new wechatCallbackapiTest(); $wechatObj-index(); class wechatCallbackapiTest {     public function index()     {         if(isset($_GET[echostr])) {             $this-valid();         } else {             $this-responseMsg();         }     }     public function valid()     {         $echoStr  $_GET[echostr];         //valid signature , option         if($this-checkSignature()){             echo $echoStr;             exit;         }     }     public function responseMsg()     {         //get post data, May be due to the different environments         $postStr  $GLOBALS[HTTP_RAW_POST_DATA];           //extract post data         if (!empty($postStr)){                 /* libxml_disable_entity_loader is to prevent XML eXternal Entity Injection,                    the best way is to check the validity of xml by yourself */                 libxml_disable_entity_loader(true);                   $postObj  simplexml_load_string($postStr, SimpleXMLElement, LIBXML_NOCDATA);                 $fromUsername  $postObj-FromUserName;                 $toUsername  $postObj-ToUserName;                 $keyword  trim($postObj-Content);                 $time  time();                 $textTpl  xml                             ToUserName![CDATA[%s]]/ToUserName                             FromUserName![CDATA[%s]]/FromUserName                             CreateTime%s/CreateTime                             MsgType![CDATA[%s]]/MsgType                             Content![CDATA[%s]]/Content                             FuncFlag0/FuncFlag                             /xml;                              if(!empty( $keyword ))                 {                       $msgType  text;                     $contentStr  Welcome to wechat world!;                     $resultStr  sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);                     echo $resultStr;                 }else{                     echo Input something...;                 }         }else {             echo ;             exit;         }     }               private function checkSignature()     {         // you must define TOKEN by yourself         if (!defined(TOKEN)) {             throw new Exception(TOKEN is not defined!);         }                   $signature  $_GET[signature];         $timestamp  $_GET[timestamp];         $nonce  $_GET[nonce];                           $token  TOKEN;         $tmpArr  array($token, $timestamp, $nonce);         // use SORT_STRING rule         sort($tmpArr, SORT_STRING);         $tmpStr  implode( $tmpArr );         $tmpStr  sha1( $tmpStr );                   if( $tmpStr  $signature ){             return true;         }else{             return false;         }     } } ? 第三步依据接口文档实现业务逻辑 验证URL有效性成功后即接入生效成为开发者。你可以在公众平台网站中申请微信认证认证成功后将获得更多接口权限满足更多业务需求。 成为开发者后用户每次向公众号发送消息、或者产生自定义菜单、或产生微信支付订单等情况时开发者填写的服务器配置URL将得到微信服务器推送过来的消息和事件开发者可以依据自身业务逻辑进行响应如回复消息。 公众号调用各接口时一般会获得正确的结果具体结果可见对应接口的说明。返回错误时可根据返回码来查询错误原因。全局返回码说明 用户向公众号发送消息时公众号方收到的消息发送者是一个OpenID是使用用户微信号加密后的结果每个用户对每个公众号有一个唯一的OpenID。 此外由于开发者经常有需在多个平台移动应用、网站、公众帐号之间共通用户帐号统一帐号体系的需求微信开放平台open.weixin.qq.com提供了UnionID机制。开发者可通过OpenID来获取用户基本信息而如果开发者拥有多个应用移动应用、网站应用和公众帐号公众帐号只有在被绑定到微信开放平台帐号下后才会获取UnionID可通过获取用户基本信息中的UnionID来区分用户的唯一性因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号用户的UnionID是唯一的。换句话说同一用户对同一个微信开放平台帐号下的不同应用UnionID是相同的。详情请在微信开放平台的资源中心-移动应用开发-微信登录-授权关系接口调用指引-获取用户个人信息UnionID机制中查看。 另请注意微信公众号接口必须以http://或https://开头分别支持80端口和443端口。 本文转自  陈小龙哈   51CTO博客原文链接:http://blog.51cto.com/chenxiaolong/1782628
http://www.zqtcl.cn/news/947953/

相关文章:

  • 运城个人网站建设学校网站建设目的
  • 住房城乡建设部门门户网站购物网站排名大全
  • 手机网站平台江门网站建设模板
  • 做本地网站需要什么资质百度多长时间收录网站
  • 网站建设公司使用图片侵权使用者有无责任夸克免费空间
  • 网站建设制作鸿运通做网站能用python吗
  • 站长源码之家Wordpress 新建标签
  • 太原网站建设详细策划如何建设网站简答题
  • 乡村生态旅游网站建设方案如何做网站的导航栏
  • wordpress百度百科网站开发 seo
  • 网站主机名wordpress主题修改底部版权
  • 网站官网怎么做龙岩iot开发福建小程序建设
  • 哪个学校设有网站开发专业北京有哪些网站公司
  • 做网站需要的带宽上行还是下行湖南竞网科技有限公司
  • 帝国cms企业门户网站仿站视频教程 网盘互联网金融p2p网站建设
  • 个人网站备案涉及支付宝做二手的网站都有哪些
  • 如何给网站做宣传导航栏网页怎么制作
  • 返利网站建设高校精神文明建设网站
  • 河北百度推广seoseo全网优化指南
  • 网站建设网页开发一个类引用另一个类的方法
  • 第四章第二节网站建设的教学设计云南网站建设一度科技公司
  • php 搭建手机网站建e网app下载
  • 河北手机版建站系统价格微信怎么开店铺小程序
  • 中国建设教育网官网是什么网站潮州seo建站
  • 如何做个购物网站学校网站设计的目的
  • 建设部网站158号文件1688官网app
  • 临沂科技网站建设在线网页截图工具
  • 聊城网站推广软件简单网页制作训练
  • wordpress去除文章作者seo核心技术排名
  • 网站建设黄页免费观看wordpress所有文章