跨域心跳无法用jquery解析json数据

2023-12-02

我将我的模块(一个 asp.net 项目)嵌入到“门户”中,门户生成一个 iframe 到我的 url,我知道它很糟糕,但我没有做到。
为了避免在用户迭代我的 Web 项目时在主“门户”端进行会话,门户所有者告诉我通过 javascript 从我的应用程序到门户启动心跳。
每个人都知道以这种方式保持会话是不安全的,但是有“门户”,那么我就无事可做。
真正的问题是我无法从我的应用程序到门户进行跨域请求,因为同源政策锁定它,我找到了一个使用jquery的解决方案,但它需要[心跳监听器]处理json。
jsonp 官方网站here.
有人可以帮助我吗?
这是我的脚本:

function startHeartbeat() 
{
    var interval = 9513575;
    window.setInterval(
         function () {
             $.ajax({
                 type: "GET",
                 cache: false,
                 async: true,
                 crossDomain: true,
                 url: "http://www.theportalurl.com",
                 dataType: 'JSONP',
                 complete:function(jqXHR, textStatus){                    
                     alert("Complete");
                 },
                 success:function(json){                    
                     alert("Success");
                 },
                 error:function(jqXHR, textStatus, errorThrown){
                     alert("Error:" + textStatus + ", detail:" + errorThrown);
                 },
            });

         }
     , interval
     );
}

在@rook给我帮助后我达到了这个目的:

function startHeartbeat(pgn) 
{
    $("body").append("<img id='heartbeat' style='width:1px; height:1px' name='heartbeat' src='http://www."+Math.random()+".org'/>");
    var interval = 350000;
    window.setInterval(
         function () {
            var rnd = Math.random();
            var url = "https://www.theportal.com/refreshsession.aspx?pgn="+pgn+"&rndv="+rnd;
            $("#heartbeat").attr("src", url);
         }
     , interval
     );
}

你试图做的事情明显违反了 JavaScript 的同源策略。一个好的解决方案是门户所有者可以为页面设置此 http 标头元素(并且only您想要使用 XHR 获取的页面)。

Access-Control-Allow-Origin: http://foo.example

source: http访问控制

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

跨域心跳无法用jquery解析json数据 的相关文章

随机推荐

  • 传递变量时 SwiftUI 中的 .sheet 行为奇怪

    我在 SwiftUI 中使用 sheet 视图 并且在代码执行中观察到奇怪的行为 我正在查看 SignInView2 struct SignInView2 View Environment presentationMode var pres
  • 使用 AJAX 将数据从 HTML 表单提交到 WebMethod

    因此 我从 HTML 表单中获取数据 然后使用 AJAX 将数据发送到 Web 方法 然后发送到 sqlite 数据库 但我的 AJAX 调用失败 我搞砸了什么 我做得正确吗 HTML 表单
  • 相当于 Access 中的 SET IDENTITY_INSERT OFF

    正如标题所示 是否有任何方法可以关闭 Access 中的自动编号字段 以允许我插入具有我选择的 id 的行 就像在 SQL Server 中使用 SET IDENTITY INSERT OFF 所做的那样 您可以使用 SQL 插入 ID I
  • Laravel 5.5 中用户会话过期时自动重定向

    我想使用 Laravel 函数在用户会话过期时自动重定向到我的登录页面 当用户尝试访问另一个页面并且会话过期时 我会进行重定向 我设置了一个生命周期 这有助于由于用户不活动而自动注销 而我想要的是在会话超时时立即重定向 我尝试使用 Java
  • mysql数据库中的奇怪字符

    当我输入像 或 这样的奇怪字符并将其存储在 mysql 数据库中时 该字符将被转换为 它可能必须对我的字符集做一些事情 但我现在不知道从哪里开始 在页面顶部我插入了 该字段在dbase中的搭配是 utf8 unicode ci 在网页中显示
  • Android studio 在 KMP/KMM/KN 中添加了错误的 xcodeproj 位置

    我正在尝试运行全新的 KMM 应用程序和我之前创建的现有 KMM 应用程序 当我尝试从 Android Studio 运行 iOS 版本时 我没有 iOS 配置 当我创建 iOS 配置时 我收到一个必须首先修复的错误 当我按下 修复它 按钮
  • 检查 PHP 类中的会话变量

    在我的索引页面顶部 使用以下命令设置会话 SESSION language english 当我回显 SESSION language 时 它回显 english 但是会话值在 PHP 类中不可读 为什么呢 你必须打电话session st
  • iOS 7 用 UIPickerView 打开 UITableViewController 很慢

    据此这个问题和 KyleC 的友善回答我已经实现了UITableViewController其中有许多行依赖于从核心数据中获取 每行显示一个简单的NSString 获取的对象的名称 并且有一个UIPickerView hidden 问题是
  • cin 条件检查错误

    我是一名学习c 的初学者程序员 我在使用 cin 命令时遇到了一个棘手的问题 在下面的程序部分中 如果我在第一个 cin 命令处输入错误的类型 则程序将根本不会执行以下任何 cin 命令 但会执行程序的其余部分 start include
  • CSS:顶部与顶部边缘

    我不确定我是否完全理解这两者之间的区别 有人可以解释为什么我会使用其中一种而不是另一种以及它们有何不同吗 如果您想将一个 块 元素从文档流中的其他元素移开 您可以使用边距 这意味着它将把以下元素推开 进一步向下 请注意 相邻块元素的垂直边距
  • 如何返回数组中可能存在的一组连续数字?

    如果我有一个已排序的数组 如何找到连续的数字 顺便说一句 这是为了确定扑克牌是否是顺子 数组中的重复项已被删除 我可以做到这一点 但这将是一种多行方法 我认为可能有一个使用可枚举方法的快速单行方法 例如 FindSequence 9 8 7
  • 如何知道黑莓设备是否有 GPS?

    我想知道设备是否有 GPS 对于 5 0 以下的设备如何做到这一点 查看文档Location Provider 在不同情况下的一些设备上尝试此代码 我认为它应该有效 try LocationProvider lp LocationProvi
  • 如何获取 Spring 4.1 使用的 Jackson ObjectMapper?

    Spring 4 1实例化一个JacksonObjectMapper实例 我有理由想要 Autowire将该实例放入我的一个控制器中 该控制器使用 Jackson 对它自己进行一些小的 JSON 解析 但是ObjectMapper它使用的应
  • 将container_of宏应用于嵌入的char数组时报告警告

    当我申请时container of宏到包含 char 数组的 C 结构 我得到警告 从不兼容的指针类型进行初始化 这是代码 define container of ptr type member const typeof type 0 gt
  • 字符串文字中的转义序列 (Fortran)

    C 中有一个例子 string str str First n Second n Third n cout lt lt str lt lt endl 输出将是 First Second Third 我想尝试在 Fortran 中重复它 但没
  • 如何连接Python IMAP4_SSL和自签名服务器SSL证书?

    我正在使用 python3 和imaplib连接到 Exchange 服务器 Exchange 服务器使用为主机名 my server fqdn 创建的自签名证书 最近在我的工作站 Ubuntu 14 04 上升级操作系统后 我的 pyth
  • Cin.get() 与 C++ 的问题[重复]

    这个问题在这里已经有答案了 我仍然不知道 Visual Studio 是如何工作的 据说它会让我的控制台保持打开状态 但事实并非如此 它仍然闪烁并关闭 难道我做错了什么 include
  • 我的 Linux 可执行程序(64 位)中的段 00 是什么

    这是一个非常简单的汇编程序 只需返回12执行后 cat a asm global start section text start mov rax 60 system call for exit mov rdi 12 exit code 1
  • 使用 htaccess 进行子域重定向,无需更改地址栏中的 URL

    我在我的网络主机上设置了一个子域 如下所示 en domain com pointing to the folder en 但是当在地址栏中输入 en domain com 时 URL变为 domain com en 如果我进一步导航 假设
  • 跨域心跳无法用jquery解析json数据

    我将我的模块 一个 asp net 项目 嵌入到 门户 中 门户生成一个 iframe 到我的 url 我知道它很糟糕 但我没有做到 为了避免在用户迭代我的 Web 项目时在主 门户 端进行会话 门户所有者告诉我通过 javascript