本人新人,刚刚上手小程序几天,希望各位大神多多指教
1、后端采用的是asp.net(VB.NET),创建的是webservice,部分代码如下
<WebMethod()> _ Public Sub GetStudentEx(ID As Integer ) Dim stu As New Student Dim stuJsonString As String If ID = 1 Then stu.ID = 1 stu.Name = "Byron" Else stu.ID = 2 stu.Name = "Frank" End If stuJsonString = JsonConvert.SerializeObject(stu) '主要是下面的两句 Context.Response.Write(stuJsonString) Context.Response. End () End Sub <WebMethod()> _ Public Function GetStudentExEx(ID As Integer ) As String Dim stu As New Student Dim stuJsonString As String If ID = 1 Then stu.ID = 1 stu.Name = "Byron" Else stu.ID = 2 stu.Name = "Frank" End If stuJsonString = JsonConvert.SerializeObject(stu) Return stuJsonString End Function |
2、微信小程序编写的js文件中的代码如下:
Page({ data: { }, onLoad: function () { wx.request({ method: "POST" , url: "http://127.0.0.1/WebService.asmx/GetStudentEx" , data: { ID: 2 }, header: { 'Content-Type' : 'application/json' }, success: function (res){ console.log( '正确在这里' ); console.log(res.data); console.log(res.data.d); console.log(res.data.Student.ID); }, fail: function (res) { console.log( '错误在这里' ); } }) } }) |
3、我是在自己电脑上模拟的,在调用后端方法“GetStudentExEx”的时候,url:"http://127.0.0.1/WebService.asmx/GetStudentExEx",是没有问题的,可以成功获取到值
4、但是在调用"GetStudentEx"的时候,发现调用不成功,提示错误
网友回复:
每个微信小程序需要事先设置一个通讯域名,小程序可以跟指定的域名与进行网络通信。
也就是说,每个小程序必须与域名绑定对不?
问题已经找到,是“Context.Response.
End
()
”这句话引起的
导致传输数据流中断。把这句话去掉就可以了