gpt4 book ai didi

javascript - AJAX/jQuery 检索 JSON 和 dataType 时出现问题

转载 作者:行者123 更新时间:2023-11-28 06:50:11 24 4
gpt4 key购买 nike

我的问题可能很简单,但我无法找出问题所在。我正在编写一些 ajsx/jQuery 代码来练习和学习更多内容,但 jQuery 和 AJAX 对我来说有一个奇怪的地方。我找不到有关 dataTypes 以及如何检索和操作每种类型(text、html、json、jsonp(我不知道什么是 jsonp)等)的任何完整信息。

我复制了 HTML 页面、PHP 文件甚至 AJAX 对象中的 header 。

第一个数据类型问题:如果我要求 texthtml 数据,那么似乎如果我执行 .append() >.text() 似乎它按字面意思复制了所有 php 文件并将其写入警报或 html 文档中,它复制了所有 PHP 代码,即使我只想检索我在 php 中回显的内容文件。

有时我会 echo "test"; 如果我对以文本或 html 形式检索的数据发出警报,它将输出 test"; 作为最后的 echo php 文件中的一行。所以这个 dataType 的事情让我感到困惑。

然后是 AJAX/JSON 问题。我正在复制简单的代码,以便您可以看到问题所在。为了测试目的,该代码是简单的代码,因为在我确定基本功能可以正常工作之前,我不想让它变得更加复杂。

HTML 文件:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-type" value="text/html; charset=UTF-8" />
<title></title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
//Guardar al cargar la pagina la ip en el servidor.
var a1 = {
url: "servidor_datos.php",
async: true,
type: "GET",
contentType: "application/json; charset=utf-8",
dataType: 'json',
success: function(data){
alert(data);
//$("#contador").append("test");
},
error: function(){
alert("Error");
}
};

$.ajax(a1);
});
</script>
</head>
<body>
<div id="contador"></div>
</body>
</html>

PHP 文件:

<?php
header('Content-Type: application/json; charset=utf-8');
$json = array("data" => "asdf");
$json = json_encode($json);
echo $json;

我正在尝试做一个独特的 IP 访问者计数器,但我不确定我是否做得正确。首先,我检查 IP 是否存在,如果不存在,我将新 IP 添加到数据库中。然后,我每 5 秒使用 setInterval 执行一次 Ajax 请求,以不断检查和更新唯一访问者数量并异步更新。

是否可以使用 setInterval 来不断循环和检查,还是应该以另一种方式执行此操作,例如服务器事件触发检查访问者数量并异步发送的代码片段?无论它是什么,我都希望它能够在不刷新页面的情况下进行更新。所以我不知道服务器发送事件或 JavaScript Web Worker 是否应该是更好的方法。

最佳答案

如果此 Ajax 请求跨域,您可以使用 dataType: "JSONP",因为您可能会遇到 CORS 问题。另请参阅使用

$.getJSON("servidor_datos.php").done(function(data){console.log(data)});

使用 console.log() 查看 PHP 脚本返回到浏览器的内容。在浏览器检查器中打开控制台选项卡。

此外,要访问 PHP 数组中的索引数据,您还需要通过 console.log(data.data) 来获取值。

关于javascript - AJAX/jQuery 检索 JSON 和 dataType 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33025931/

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