关于ajax 跨域调用接口
2016-03-25 17:32
417 查看
方法一: $.ajax({ 3 type : "get", 4 async : false, 5 url :xhrurl, 6 cache : false, 7 dataType : "jsonp",//这里必须要写成jsonp 8 jsonp: "callbackparam", 9 jsonpCallback:"jsonpCallback1", 10 success : function(json){ 11 alert(json[0].name); 12 }, 13 error:function(e){ 14 alert("error"); 15 } 16 });
后台返回数据时,要修改返回格式
String callbackFunName = context.Request["callbackparam"]; context.Response.Write(callbackFunName + "([ { \"name\":\"John\"}])");//前面必须加上参数才可 参考:http://www.cnblogs.com/mahatmasmile/archive/2013/03/29/2989505.html 方法二: ajax普通写法 后台使用httpwebRequest,新建一个ashx文件,ajax访问即可
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
HttpWebRequest request = null;
HttpWebResponse response = null;
string userid=context.Request["userid"].ToString();
string pageindex=context.Request["pageindex"].ToString();
string pagesize=context.Request["pagesize"].ToString();
CookieContainer cc = new CookieContainer();
request = (HttpWebRequest)WebRequest.Create("http://Phone/LoginHandler.ashx");
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:19.0) Gecko/20100101 Firefox/19.0";
string requestForm = "Action=Phone_QueryMemberRemark&"+"userid="+userid+"&pageindex="+pageindex+"&pagesize="+pagesize;
byte[] postdatabyte = Encoding.UTF8.GetBytes(requestForm);
request.ContentLength = postdatabyte.Length;
request.AllowAutoRedirect = false;
request.CookieContainer = cc;
request.KeepAlive = true;
Stream stream;
stream = request.GetRequestStream();
stream.Write(postdatabyte, 0, postdatabyte.Length); //
stream.Close();
//接收响应
response = (HttpWebResponse)request.GetResponse();
Console.WriteLine();
Stream stream1 = response.GetResponseStream();
StreamReader sr = new StreamReader(stream1);
var json = sr.ReadToEnd();
context.Response.Write(json);
}
这样前台普通写法就好了。
相关文章推荐
- wireshark添加ip.id字段
- 网站开发只需数小时?Meteor 说这才是未来
- JavaWeb项目开发案例精粹-第3章在线考试系统-004Service层
- office2016(专业增强版)安装、激活
- iOS添加一个view到所有视图的上面
- Verilog语法
- 在ifcfg文件中写上gateway网络不通的解决方法
- IOS_CGContextRef画各种图形
- 七夜在线音乐台开发 第一弹 (原创)
- 创建一个动态空间存储未知大小的二维数组
- Android View体系(八)从源码解析View的layout和draw流程
- text11
- WebApi身份认证解决方案:Basic基础认证
- HNOI模拟 Day3.25 By Yqc
- 如何实现加载头像,并对图片进行处理,以及显示附近好友
- 领域驱动设计:分离领域
- mount/umount函数
- 本体学习笔记--在eclipse里操作本体的准备
- Git 仓库的创建和常用命令的使用
- c++ 虚继承与继承的差异