ASP.NET开发web应用过程中遇到的javascript跨域请求问题 - 面向对象网,web开发,jquery,学习,对象 - 面向对象技术开发

面向对象技术开发

会员投稿 投稿指南 站长资讯通告:
您的位置: 首页 > Web开发 > Jquery > 正文

ASP.NET开发web应用过程中遇到的javascript跨域请求问题

来源: www.bianceng.cn 阅读:

解决方案

不提倡跨域的post请求。

0.jquery中ajax的跨域方案jsonp

.ashx代码

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
     
namespace KB.DSN.Web.API.Tokens 
{ 
    /// <summary> 
    /// Summary description for Get 
    /// </summary> 
    public class Get : IHttpHandler 
    { 
     
     
        public void ProcessRequest(HttpContext context) 
        { 
            setresponsecontext(context); 
            var token = KB.DSN.BusinessAccess.UniqueCommunicationCode.GenerateUniqueCommunicationCode(); 
     
            var outputobject = new
            { 
                Head = new Models.KBJsonHeadResponse(), 
                Body = new { Token = token } 
            }; 
     
            var outputjsonstring = Newtonsoft.Json.JsonConvert.SerializeObject(outputobject); 
     
                 
            context.Response.Write(context.Request.QueryString["callback"]+"("+outputjsonstring+")"); 
     
        } 
     
        private void setresponsecontext(HttpContext context) 
        { 
                
            context.Response.ContentEncoding = System.Text.Encoding.UTF8; 
            context.Response.ContentType = "application/json"; 
        } 
     
        public bool IsReusable 
        { 
            get 
            { 
                return false; 
            } 
        } 
    } 
}

html页面

function getToken_jsonp(){ 
        $.ajax({ 
       
    url: "http://192.168.0.111/api/tokens/get.ashx", 
          type: "get",  
    dataType: "jsonp", 
    jsonp: "callback", 
    async: false, 
         
          contentType: "application/json", 
          success: function(data){ 
      //alert("getToken success"); 
            $("#token").text($.toJSON(data)); 
            //console.log(data); 
           
          }, 
    error:function(){ 
        alert("getToken fail"); 
    } 
        }); 
     
      }

Tags:
相关文章列表: