webservice 实现json模式

直接上代码

public string GetUserInfoByOpenid(string openid)
{
var weixinuser = new WeiXinUser();

weixinuser.NickName = user.NickName;
weixinuser.HeadImg = user.HeadPhoto;

var data = Newtonsoft.Json.JsonConvert.SerializeObject(weixinuser);
string callbackMethodName = HttpContext.Current.Request.Params["callback"] ?? "";

if (callbackMethodName == "")
{
return data;//非jsonp模式调用

}
else
{
string result = callbackMethodName + "(" + data + ");";//jsonp模式调用
HttpContext.Current.Response.Write(result);
HttpContext.Current.Response.End();

}
}
return "";
}

请注意 webconfig 需要配置  webservice 请求模式 get or post     jsonp是get模式

增加 <system.web> 

<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>

</system.web>

 

 

如何调用

 

$.ajax({
url: "http://xx/service/userservice.asmx/GetUserInfoByOpenid",
type: 'GET',
data:{openid:'ooo'},
dataType: 'jsonp',//here
success: function (data) {
alert(data.NickName)
}
});

完美收官

转载于:https://www.cnblogs.com/waitingfor/p/4707669.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值