日期:2014-05-17  浏览次数:20499 次

关于AJAX跨站点访问问题
平时用ajax都是一个项目下面用相对路径,我想试下把它url改成其他站点会怎么样。所以我在本地建了2个网站,用ajax去访问另外一个站点的文件,调试的确执行了另外一个站点的文件,然后返回输出结果,但是获取的结果为空,这怎么回事,怎么去访问另外一个站点然后得到输出结果呢?这就是所谓的ajax跨域访问吗?
  <script>
        $(document).ready(function () {
            $("#btn").click(function () {
                $.ajax(                        {
                            url: "http://localhost:9507/WebSite1/ashx/Handler.ashx",
                            success: function (data) {

                                alert(data.toString());
                            }
                        });
            });

        });
    </script>

------解决方案--------------------
url: "AjaxGeturl.aspx?url=http://localhost:9507/WebSite1/ashx/Handler.ashx",

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml;
using System.Net;
using System.IO;
using System.Text;
namespace NetCMS.Web
{
    public partial class AjaxGeturl : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                string url = string.Empty;
                url = Request.QueryString["url"];
                Response.Write(GetResStr(url, "utf-8"));
         &