最近在弄针式PKM的支付宝在线支付,才发现VS2010自带的Asp.net Web 服务器 只能在本机访问,在网上搜索了不少资料。
1、尝试方案一:有一个一键访问的叫Aspnet4.0的没有解决这个问题,只是简单调用了自带的WebDev.WebServer40.exe 这个文件
2、找到方案二:在园子中另外找到这篇:使WebDev.WebServer.exe 当web服务器 ,很有帮助,但没有解决本机访问的调试问题,后来找到更简单的方法,支持任意IP访问,即使用 socket.Bind(new IPEndPoint(IPAddress.Any , port)); 初始服务器的监听端口(此时用netstat -a 显示 0.0.0.0 本机地址)
2.1 用ILSpy 反编译了WebDev.WebServer40.exe 和WebDev.WebHost40.dll,修改后重新编译
2.2 要将编译好的WebDev.WebServer40.exe 替换到:C:\Program Files\Common Files\microsoft shared\DevServer\10.0
2.3 要将WebDev.WebHost40.dll 每次复制到要调试的asp.net 项目的bin 文件夹(没有则手工建一个)
经以上折腾,可以在本机完成支付宝在线支付的调试。后续也可以作为简单的Asp.net Web 服务器(有安全问题,不能用于互联网)
3、源代码下载 https://files.cnblogs.com/fjwuyongzhi/WebDevWebServer40_fjwuyongzhi.rar
(仅用学习参考使用)