<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Loading...

    java .net

    javascript 跨域訪問 沒有權限的問題

          公司買的報表工具,為了節省成本,將報表服務單獨部署了一個應用,我們的業務系統調用報表應用展現報表,開發還算順利,現在到了用戶試用了,問題來了

         其中有個功能叫報表反查,頁面中包含了四個fream,用戶在其中三個fream中設置查詢條件,當點擊查詢按鈕,調用javascript得到每個fream中的參數,并將參數賦值到第四個fream中的form中的隱藏屬性中,然后提交這個form(這時的form是在業務系統中的jsp)調用報表服務器的action,返回報表(此時的是報表應用返回的頁面,不再是業務系統中的jsp了)。

         這涉及到了兩個應用,再次點擊查詢按鈕,Ie就會報“沒有權限”錯誤。

        在網上搜,一個結論,瀏覽器不允許javaScript跨域訪問,據說為了安全,那咋辦,得用啊?!

        搜啊搜,找到一個文章專門討論這事兒的,作者提出了三種解決方案:

        1、在涉及到跨域訪問的頁面中加入

    <script language="JavaScript">
    <!--
    document.domain = "mycompany.com"; //指定 document 所屬的域
    -->
    </script>

    這樣可以蒙混過瀏覽器,但是這種方法必須滿足一個條件,就是兩個應用必須屬于同一個父域,也就是,比如,abc.def.com父域就該是def.com,如果document.domain = "域名";設置的不是其父域,就會報“參數無效”的錯誤。

          而問題是我們的報表服務器和業務系統服務器不在一個父域下,這條路是行不通了

         召集了公司幾個同事討論,最后得出兩個方案,一是改為彈出窗口,而是寫webservice

          考慮到工作量,修改要小,選擇了彈出窗口。

    2、是IE獨有了,就是彈出showmodaldialog,這種方法因為IE升級又行不通了。

    3、就是通過服務器處理了。

    總結,現在看來,解決這個問題就是1和3兩種方案,第一種是在客戶端處理,局限就是兩個應用必須在同一個父域下,還有就是好像不是所有的瀏覽器支持設置domain。第二種就是通過服務器處理,這種方法好像勢必要刷新整個窗口,像我這種情況,一個頁面中有幾個fream的情況,像保留用戶設置的參數,還么有想到好的解決方法。

    還想到一條路就是用ajax,這倒是實現了無刷新,但是我們的報表頁面展現是一個自定義的jsp標簽,還是要服務器展現,這條路沒走下去。

    參考文章

    posted on 2008-08-26 22:06 閱讀(5590) 評論(1)  編輯  收藏

    評論

    # re: javascript 跨域訪問 沒有權限的問題 2009-12-04 11:27 cjp

    我遇到了類似的情況,我的原因是缺少引用:
    using System.Web.Script.Services;
    然后:在定義的的【webservice】的類上缺少屬性【[ScriptService]】。
    我的類如下:
    //---------------------------------------------------------------
    //...默認引用
    using System.Web.Script.Services;


    /// <summary>
    /// WS_DataValidate 的摘要說明,用于數據驗證
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ScriptService]
    public class WS_DataValidate : System.Web.Services.WebService
    {
    //.....您要添加的內容
    }
    //------------------------------------------------------------  回復  更多評論   


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    公告

    希望有一天

    我能用鼠標雙擊我的錢包

    然后選中一張100元

    按住“ctrl+c”

    接著不停的“ctrl+v”

    嘻嘻~~~笑醒~~~



    導航

    <2008年8月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    統計

    常用鏈接

    留言簿(6)

    隨筆分類(102)

    隨筆檔案(398)

    文章分類

    文章檔案(10)

    有趣網絡

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲日韩在线中文字幕综合| 亚洲乱码中文字幕在线| 国产VA免费精品高清在线| 欧洲美熟女乱又伦免费视频| 亚洲乱码在线观看| 美女裸身网站免费看免费网站| 亚洲精品视频在线免费| 又大又硬又爽又粗又快的视频免费| 亚洲一区综合在线播放| 亚洲免费中文字幕| 亚洲综合一区二区三区四区五区 | 国产精品亚洲片在线| 国产区在线免费观看| 亚洲视频一区二区三区| 99re热精品视频国产免费| 亚洲色成人网一二三区| 麻豆一区二区免费播放网站 | 亚洲国产日韩一区高清在线| 999任你躁在线精品免费不卡| 亚洲黑人嫩小videos| 午夜性色一区二区三区免费不卡视频 | 无码精品A∨在线观看免费| 亚洲熟妇无码八V在线播放| 国产成人免费a在线资源| 色视频在线观看免费| 亚洲无线码一区二区三区| 99久9在线|免费| 在线亚洲午夜片AV大片| 免费国产高清视频| 国产成人无码区免费网站| 亚洲第一精品电影网| 国产成人高清精品免费软件 | 亚洲毛片免费视频| 国产成人在线观看免费网站| jizz18免费视频| 亚洲色图校园春色| 国产一级淫片免费播放电影| 三年片免费高清版 | 国产成人免费全部网站| 成人黄网站片免费视频| 最新国产精品亚洲|