通过webservice服务方法同微信小程序进行数据交互:
1、微信接收数据并展示:
后台:asp部分:
新建webService服务 WebService1.asmx
在webService1.asmx里面添加需要的方法:,需要加上特性[webMethod],此特性继承与Attribute:描述此特性含义:将此特性添加到XMl WEB中的一个方法使用ASP.NET创建的服务使该方法可调用远程Web客户端。此类不能被继承。
webService中添加方法AdminLogin():
[WebMethod] public string AdminLogin() { string sql = @"select top 1 *from dbo.Admins "; string AdminName = ""; try { SqlDataReader objReader = SqlHelper.GetReader(sql); if (objReader.Read()) { AdminName = objReader["AdminName"].ToString(); objReader.Close(); } else AdminName = "aa"; } catch (Exception e) {
throw new Exception(e.Message); } return AdminName; }
查看webService1页面:
微信小程序端使用wx.request来请求信息:
微信项目.js文件里面写入(这部分js都在
/**
* 生命周期函数--监听页面加载
*/
onLoad:
function (options) {
这里面添加的):
wx.request({
url:
'http://192.168.1.187:8000/Models/WebService1.asmx/AdminLogin',
//仅为示例,并非真实的接口地址
data: {
Id:
"2",
name:
"ac"
},
method:
'POST',
header: {
'content-type':
'application/json'
// 默认值
},
success:
function (res) {
console.log(res.data)
}
}),
小程序端调用显示结果:
这里只是js调用测试,没有写微信的视图部分,感兴趣的朋友测试写下视图看下,本人也是因需要才开始研究
2、微信小程序发送数据到webservice并接收返回信息并显示:
webservice添加方法:
[WebMethod] public string ABBA(string Id,string name) { //从微信接收数据然后返回 return "ID:"+Id + "1001 ,Name:"+name;
}
说明下:这里的string Id,string name 参数是和微信里面js部分的data里面字段一致的,如果不一致我这边测试没有成功过,如果有测试成功的请说明下webservice怎么调用的,或者小程序部分怎么写的。(或许小程序部分可以在视图里面写入一个form表单来进行提供,供webservice来读取。)
小程序部分js:
wx.request({
url:
'http://192.168.1.187:8000/Models/WebService1.asmx/ABBA',
//仅为示例,并非真实的接口地址
data:{
Id:
'2001',
name:
'Tome'
},
method:
'POST',
header: {
'content-type':
'application/json'
// 默认值
// 'content-type': 'application/x-www-form-urlencoded'
},
success:
function (res) {
console.log(res.data);
// this.setdata({
// id:res.data["Id"]
// });
},
fail:
function (res) {
console.log(
'submit fail');
},
})
小程序测试结果:
这部分是练习webservice同微信小程序交互,上网查资料特少,估计是因为webservice同微信交互过于复杂了,后面再研究下webApi同小程序的交互。有结果在继续写。 来源:https://blog.csdn.net/gc101312/article/details/79971540 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |