• 关于绕过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脚本
  • 相关阅读:
    JAVA日常之三
    java将字符串存入oracle的Blob中
    java连接oracle数据库
    JAVA日常之二
    JAVA日常之一
    linux日常命令之三
    linux日常命令之二
    linux日常命令之一
    Python之路【第四十篇】:django日更
    Python之路【第三十九篇】:django日更
  • 原文地址:https://www.cnblogs.com/chongyao/p/11803103.html
Copyright © 2020-2023  润新知