關於繞過cookie 同源策略,和同時向前臺返回圖片和腳本的解決方案

  • 繞過cookie的同源策略
    •   向前端寫入腳本時使用domain來繞過同源策略。 好比 domain= baidu.com .次腳本生成的cookie能夠在 *.baidu.com中使用
             /// <summary>
              /// 插入cookie 代碼添加過時時間爲一分鐘
              /// </summary>
              /// <param name="code"></param>
              /// <returns></returns>
              private string GetScript(string code)
              {
                  StringBuilder cookieInfo = new StringBuilder();
                  cookieInfo.Append("var exDate = new Date();");
                  cookieInfo.Append("exDate.setTime(exDate.getTime() + 60 * 1000);");
                  cookieInfo.Append("document.cookie=\"");
                  cookieInfo.Append("ValidateCode=");
                  cookieInfo.Append(des.MD5Encrypt(code.ToLower()));
                  cookieInfo.Append(";path=/");
                  cookieInfo.Append(";domain=baidu.com");
                  cookieInfo.Append(";Expires=\" + ");
                  cookieInfo.Append("exDate.toGMTString();");
                  return cookieInfo.ToString();
              }
      //生成效果 var exDate = new Date();exDate.setTime(exDate.getTime() + 60 * 1000);document.cookie="ValidateCode=99fd2fecf15f4136f09bf0007a25c10e;path=/;domain=baidu.com;Expires=" + exDate.toGMTString();
      //前臺使用eval便可生成對應cookie
       
  • 前端返回圖片和腳本
    兩個解決方案
    1. 把圖片存儲到網站一個地址,向前臺同時返回地址和生成cookie腳本
    2.把圖片轉化成base64編碼,同時以string類型向前臺返回 圖片base64str和生成cookie腳本
相關文章
相關標籤/搜索