微信接入调试方案

转自:http://blog.lazybee.me/wechat-development/

微信接入是个很头疼的东西,主要原因是 webhook 的 url 必须是服务器地址,无法在开发机上调试。
目前为止我用的方案是在服务器上抓包在本地模拟,配合单元测试把功能开发完成后,再放到服务器上调试,但调试过程中难免要对代码做修改,体验很不好。
最近受不了这么折腾,脑洞大开地想把服务器上的请求直接 proxy 到本地,然后发现 ssh 自带了这个功能。

主要的东西就是 ssh 的 -R 参数,这里假设微信后台填的 webhook URL 是 http://wechat.lazybee.me,本地开发环境开的端口是 http://127.0.0.1:8000,整个转发流程是这个样子的

1. Nginx 把 wechat.lazybee.me 的请求转发到其它端口,比如 10000 端口。(因为 80 端口上还有其它服务在跑,不能暴力转发 80 端口所有请求)

server {
    listen 80;
    server_name wechat.lazybee.me;

    location / {
        proxy_pass http://127.0.0.1:10000;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

2. 在本地开一个到服务器的转发通道。(要求服务器开启 sshd 服务)

ssh lazybee.me -R 10000:127.0.0.1:8000

本地win7  cmd 中输入:ssh -R 10000:127.0.0.1:8000 -l root 120.24.120.100输入密码  netstat  -na   查看是10000端口在监听

3. 让本地开发环境监听 8000 端口。

这样就可以直接在本地边开发边测试了,当然别忘了根据微信的规则配置 OAuth2.0网页授权 等参数。



何连接内网sshd服务器2008-06-14 23:46原文:[绝对原创] ssh 这个强大的工具。
(以下方法不分平台,都适用)

案例一、
内网主机 A ,开了 http,ftp ,http ,vnc,sshd,socks5,cvs 等服务。无合法 ip 地址。
外网主机 B ,开了 sshd 服务。有合法 ip : 218.xxx.xxx.xxx
我们的目的是让 B 能访问 A 上的各种服务。

步骤:

A 知道 B ip 后,先用 ssh ssh 的参数,请看 -R listen-port:host:port Forward remote port to local address-L local (本地) -R 1234:localhost:21 其实做了个“端口转发(forward)"。
意思是主机 A 把本地的 21端口(对应ftp服务)映射为 B 的1234 端口(任意未被占用),同时 A 监听 B 的1234 端口。
在 B 上用 netstat -al | grep 1234 ,你能看到这个监听连接。
任何发送到 B 1234 端口的请求将被传送到 A的 21 端口。

B 用 ftp 工具(任意,如gftp) 连本地的 1234 端口,输入 A 的 ftp 用户和密码。

ftp localhost 1234
千万不要觉的奇怪,为什么连的是本地的地址。
举个不恰当例子,相当于 A 在 B 的房间里装了个窃--听**器(监听端口),那么 B 在房间里说的话就通过窃**听*//器传送到了 A。

时间: 2024-08-08 22:09:33

微信接入调试方案的相关文章

移动端调试 — Pure|微信环境调试方案|App环境调试方案

Pure 详细参见: 中文文档:http://leeluolee.github.io/2014/10/24/use-puer-helpus-developer-frontend/ 源码:https://github.com/leeluolee/puer 微信环境调试方案 微信开发者工具现在不能用了,对于前端来说,主要调试分享,和微信授权,这两块都有成熟解决方案. 其次,需要调试一些浏览器样式兼容问题,这个..微信浏览器内核是X5内核,兼容性良好,具体兼容性问题具体分析吧 如下,分享下微信环境踩过

微信蓝牙BLE接入调试指引 第三方服务器篇

微信蓝牙BLE接入调试指引 第三方服务器篇 3 构建第三方服务器 服务器的功能主要是接收微信发过来的绑定.解绑.菜单等事件,以及微信发过来的文本.设备发过来的数据等. 3.1 编译服务程序 QQ提供了服务程序的DEMO,下载地址如下: Nordic nRF51822接入服务器端源代码 http://iot.weixin.qq.com/wiki/doc/blue/BlueDemoServer.zip 下载编译工具: Download Java 1.7 64位 http://www.cr173.co

Android逆向之旅---应用的"反调试"方案解析(附加修改IDA调试端口和修改内核信息)

一.前言 在前一篇文章中详细介绍了Android现阶段可以采用的几种反调试方案策略,我们在破解逆向应用的时候,一般现在第一步都回去解决反调试,不然后续步骤无法进行,当然如果你是静态分析的话获取就没必要了.但是有时候必须要借助动态调试方可破解,就需要进行操作了.现阶段反调试策略主要包括以下几种方式: 第一.自己附加进程,先占坑,ptrace(PTRACE_TRACEME, 0, 0, 0)!第二.签名校验不可或缺的一个选择,本地校验和服务端校验双管齐下!第三.借助系统api判断应用调试状态和调试属

**微信接入探秘(一)——从零认识微信接口(主动接口和被动接口)

本文出处:http://blog.csdn.net/chaijunkun/article/details/53385088,转载请注明.由于本人不定期会整理相关博文,会对相应内容作出完善.因此强烈建议在原始出处查看此文 写在前面 回想起来今年还没有在CSDN上发过文章,草稿箱里积攒了很多话题,可由于时间关系最终也没发出来.不能再拖了,打算写个系列专题,聊聊微信接入. 随着微信用户量的不断增加,越来越多的企业也将自己的服务加入到了微信当中.微信本身提供的公众号.服务号的基础功能难以满足日趋增长的需

微信接入探秘(一)——从零认识微信接口

本文出处:http://blog.csdn.net/chaijunkun/article/details/53385088,转载请注明.由于本人不定期会整理相关博文,会对相应内容作出完善.因此强烈建议在原始出处查看此文 写在前面 回想起来今年还没有在CSDN上发过文章,草稿箱里积攒了很多话题,可由于时间关系最终也没发出来.不能再拖了,打算写个系列专题,聊聊微信接入. 随着微信用户量的不断增加,越来越多的企业也将自己的服务加入到了微信当中.微信本身提供的公众号.服务号的基础功能难以满足日趋增长的需

微信接入机器人实现对别人消息和群at消息的自动回复

微信接入机器人实现对别人消息和群at消息的自动回复 有时候,我们想让我们的微信号对别人发出的各种消息做出回复.我们可以通过接入图灵机器人的方式实现. IDLE编写py文件并保存,命名为wxbot. #!/usr/bin/env python # coding: utf-8 import os import sys import webbrowser import pyqrcode import requests import json import xml.dom.minidom import

thinkphp的调试方案

hink php提供一种页面调试方案,Trace. 使用这种调试方案只需要在配置文件中使用下面这句话: 'SHOW_PAGE_TRACE' =>true 效果如下: 在每一个页面的右下角,都会有这样一个按钮,你可以点开: 这里面有很多页面信息. 具体显示哪些信息是你可以自行配置的,配置方法是: 1 'TRACE_PAGE_TABS'=>array( 2 'base'=>'基本', 3 'file'=>'文件', 4 'think'=>'流程', 5 'error'=>'

微信接入服务器配置

填写服务器配置 打开https://mp.weixin.qq.com,登录到相应的公众号.在 开发->基本配置里填写相关信息 URL:是与微信进行接入认证的地址,由于我的默认页面是 Token:由开发者自定义填写,用作生成签名 EncodingAESKey:随机生成即可 消息加密方式:明文模式 服务端程序验证 可参考微信开发接入指南 1)获取微信通过GET传过来的参数 2)对token.timestamp.nonce三个参数进行字典排序 3)将上一步中的三个字符串参数进行拼接,并sha1加密 4

JAVA实现 springMVC方式的微信接入、实现消息自动回复

前段时间小忙了一阵,微信公众号的开发,从零开始看文档,踩了不少坑,也算是熬过来了,最近考虑做一些总结,方便以后再开发的时候回顾,也给正在做相关项目的同学做个参考. 思路 微信接入:用户消息和开发者需要的事件推送都会通过微信方服务器发起一个请求,转发到你在公众平台配置的服务器url地址,微信方将带上signature,timestamp,nonce,echostr四个参数,我们自己服务器通过拼接公众平台配置的token,以及传上来的timestamp,nonce进行SHA1加密后匹配signatu