通过javascript请求和响应第三方域



我正在使用一个基于 Web 的应用程序,该应用程序必须在第三方网站上向用户显示其帐户中的信息,他们将提供他们的登录详细信息,我必须从他们的帐户中提取数据并将其显示在我的基于 Web 的应用程序中,但问题是 第三方网站不允许其他任何人访问没有在其注册 IP 的帐户数据库 .因此,我不能使用任何服务器端或任何类型的代理,我必须使用用户ip来发送和接收站点的数据

所以我的主要问题是">如何以任何基于客户端的语言获得跨域请求的响应"。我听说这是不可能的,因为它违反了跨域政策,但我发现一些网站告诉它可以使用 JSONP 和一些 src 属性。我实际上很困惑如何做到这一点.我需要该方法的示例,例如我向第三方站点发出请求并能够读取他们发送的 reone。

请帮助我.

谢谢

您不能让访问者的浏览器向任意网站发出 HTTP 请求并用 JavaScript 处理响应。

如果第三方已经构建了 JSON-P API,您可以使用它。

如果第三方支持 CORS(并且您的访问者具有兼容的浏览器(,那么您可以使用 XHR。

详细介绍

这两种方法都没有意义,除非您被告知它们受支持。(如果第三方将其服务锁定到特定的 IP 地址,如果支持任何一个,我会感到惊讶(。

对于 JSONP 请求,您可以使用库或手动执行。对于后者,您可以插入一个新的 <script> 标记,其中包含一个包含所有请求信息和附加回调属性的 src 属性。

 <script src="//remote.host.com/getJSONP.php?param1=0&callback=myFunc"></script>

然后,在您的页面中,您必须定义一个与回调同名的函数(此处myFunc(,该函数处理响应。

function myFunc( data ) {
  // do something with data
}

响应通常是一个或多或少复杂的 JS 对象,然后您可以在回调函数中使用它。

注意:您只能传递GET参数,而不能传递POST或任何其他类型!

相关内容

  • 没有找到相关文章