gpt4 book ai didi

php - 我如何从另一个域(跨域)获取由php脚本生成的html

转载 作者:行者123 更新时间:2023-12-01 08:17:21 24 4
gpt4 key购买 nike

我想知道如何获取跨域php脚本生成的HTML代码?

通常,如果我在同一个域上,我会按如下方式使用 Ajax:

$.ajax({
type: 'GET',
url: 'user.php',
data: 'user_id=user_id', //assuming user_id value was already set.
success: function(html)
{
$('#info').empty().html(html);
}
});

但我现在正在与我的服务器域不同的域上工作。这意味着我使用 JSON 将数据发送回我的服务器 php 脚本。但是,我知道 JSON 只发送数据,但不发送完整的 HTML 代码(或者我在这里遗漏了一些点吗?)

那么,我怎样才能将跨域php脚本(服务器)生成的html代码获取到我的网页(另一个域)。

最佳答案

使用 javascript,您可以执行与 JSON 相同的操作,它称为 JSONP,P 是带填充

或者你可以将其称为带有回调的 JSON:

//请求页面

myCallback("Some string or Object to parse to your site");

//您的页面

window["myCallback"] = function(string_or_object) {
// Here you can do everything with the parsed data
}

创建脚本标签并包含请求页面。确保在包含脚本标签之前定义回调

或者您可以使用 jQuery 的 ajax 方法,并将 dataType 设置为 jsonp:

$.ajax({
"url": "requst_page.php",
"dataType": "jsonp",
"success": function(string_or_object) {
// Here you can do everything with the parsed data
}
})

看看http://remysharp.com/2007/10/08/what-is-jsonp/

编辑评论:

JSON 是正确的,对象通常以大括号 {} 开头。

演示 JSON:

{
"myString": "myValue",
"myOtherString": ["My", "Other", "Value", "This", "Is", "An", "Array"]
}

但是使用与 JSONP 相同的方法,您可以解析字符串,而不是以 {} 开头和结尾的奇怪的东西。

在我的示例 1 中为 myCallback:myCallback("HERE I PASS A STRING INSTEAD OF AN OBJECT")。请参阅""“字符串放在这里”

如果它是 JSON 并使用我的 DEMO JSON,它将如下所示:

myCallback({
"myString": "myValue",
"myOtherString": ["My", "Other", "Value", "This", "Is", "An", "Array"]
})

关于php - 我如何从另一个域(跨域)获取由php脚本生成的html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9685312/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com