导航:首页 > IDC知识 > ajax访问服务器

ajax访问服务器

发布时间:2020-11-12 17:49:56

1、jquery ajax是不是得有服务器环境才能运行啊?

你好!!

是的,jquery ajax需要向服务器发出http请求,然后通过响应进行后续处理。
你说的“在静态页是不是运行不了”,指的是请求的是静态页么?
ajax请求可以访问静态页面,也可以访问动态页面。其实所谓静态或动态,只是说数据的生成形式而已。

搭建一个服务器环境,有简单的也有复杂的。

2、js中怎样用ajax把值传给服务器

xhr.open('get', 'check_username.do?username=韩梅梅',true);
xhr是ajax对象
这行代码能看懂吧
'check_username.do?username='
这句的意思就是想check_username.do发送请求
传入的变量是username 值为 韩梅梅
这个值只能是字符串
在java中通过request.getParameter("username")获取

3、本地的网页如何通过ajax发送并获取服务器的数据

jQuery 是js的一种框架 。他的实现方式比较简单。jQuery的下载你可以百度一下。我简要说明一下他的使用。


$.post() 方法


$.post() 方法通过 HTTP POST 请求从服务器上请求数据。


语法:

$.post(URL,data,callback);

必需的 URL 参数规定您希望请求的 URL。

可选的 data 参数规定连同请求发送的数据。

可选的 callback 参数是请求成功后所执行的函数名。

下面的例子使用 $.post() 连同请求一起发送数据:

实例:

$("button").click(function(){
  $.post("demo_test_post.asp",
  {
    name:"Donald Duck",
    city:"Duckburg"
  },
  function(data,status){
    alert("Data: " + data + " Status: " + status);
  });
});



讲解一下原理 :

从你的浏览器发送一个异步请求 post样式的 到服务器。

服务器接收请求。并按请求的内容返回数据。

浏览器接收服务器传回的结果。


如果你想看这个过程,那就去下载抓包软件。 抓一下数据包就清楚了。

4、怎么利用ajax异步请求调用服务器上的html静态页面?

这个请求是有区别的,最大的区别就是是否跨域。具体跨域是怎么界定的,你自己去查资料吧。只要记住一点,跨域就是用域来区分的,不管文件是不是在同一个地方。也就是说同一个文件夹也可能会产生跨域问题。

请求本域名下的文件,只要写标准的ajax请求即可。我想基本的写法你是会了的,我这就不写了。但是我建议你去看看原生的怎么写的,因为你了解原生怎么写的,你就不知道jQ只要一个load就干完的事到底干了什么。就像1+1可以得到2,但是你用了两天时间解开的一个方程式也可以得到2,同样是2,但是绝对不一样。

现在来说跨域。只说解决方法。跨域一般情况下有三种解决方法。第一种就是干掉产生跨域的源头——浏览器,修改浏览器的设置就可以了,这个不建议。第二种,是生产环境下最常用的,就是用服务器设置解决。你请求自己的服务器,让自己的服务器去请求别的服务器上的资源,就规避了跨域问题。现在不知道你能用这种方式不。第三种,就是你自己解决,用JSONP解决。最简单的方法,就还是用jQ。在jQ的官方文档里搜索jQuery.ajax(),之后页面内搜索crossDoamin,然后仔细看看就可以了。但是还是建议搜索一下JSONP是什么。

5、ajax能不能发送https请求获取服务器数据

1、ajax能发制送https请求获取服务器数据。

6、jquery的ajax访问服务器json数据的url怎么写

不太明白,是json里有url这个参数,还是jquery访问后台的url,
$.ajax(
url:"**",
type:"post",
data:"***向后台传递的参数",
dataType:"json",
success:function(msg){
alert("成功");//msg为后台返回值
}
);
url看你采用得是什么语言,如java servlet,url地址就是servlet的映射,struts的话,就是配置文件里的action映射

7、ajax访问服务器status返回404

配置文件写错了,result的文件名书写不正确。

0: (Uninitialized) the send( ) method has not yet been invoked. 

1: (Loading) the send( ) method has been invoked, request in progress. 

2: (Loaded) the send( ) method has completed, entire response received. 

3: (Interactive) the response is being parsed. 

4: (Completed) the response has been parsed, is ready for harvesting.

8、Ajax在本地运行没有问题,但是我把网站发布到服务器上去,访问出现好像没反映了

看看复你的web.config是否制配置支持路径查询

在web.config的system.web节内添加
<webServices>
<protocols>
<add name="HttpSoap"/>
<add name="HttpPost"/>
<add name="HttpGet"/>
<add name="Documentation"/>
</protocols>
</webServices>

9、怎样实现用ajax向服务器发送请求并接收服务器返回的数据,并在HTML页面的Table中显示?

比如服务器上有张表或者list
id name sex
1 张三 男
2 李四 女
3 王五 男
你首先在后台代码中把这个表处理成为JSON格式然后用Response.write的方法输出来,比如这样
[{id:1,name:'张三',sex:'男'},{id:2,name:'李四',sex:'女'},{id:3,name:'王五',sex:'男'}]
JSON是用于在JS中描述实体对象的一种方式,具体关于JSON的知识可以看w3school.com.cn上的相关内容,我这儿就不给你细讲了,很简单,我只说做法:
为了方便使用,你需要在你的页面中引用jQuery库,我不知道你用什么语言做的后台程序,原理一样
$.ajax({
url:"这里换成你写好的用于把表转换成JSON的后台处理文件地址,比如a.aspx?参数",
type:"POST",//这里是AJAX请求的方式
dataType:"JSON",//如果你回发的内容是JSON格式的就用这个,否则用Text或其他
data:{
参数1:值,
参数2:值,
......
参数n:值
},//要发送的参数,如果无参数可以不写此项
success:function(data)
{
//此处写入发送成功后要处理的代码,而参数里的这个data,就是请求成功后返回来的上面那个格式的JSON,你可以用data[i]的值来取其中一行,如取张三的数据就是
data[0].name,就取出了张三的name属性
所以你可以在这里用循环去处理data,然后将结果用document.write的方式输出来就完成了。
},
error:function(XMLHttpRequest,Error,F)
{
//出错后可以在这里给出提示,Error参数表示错误信息
}
});
还有弄不清楚的地方可以继续和我探讨。

10、javascript使用ajax请求数据的url所指向服务器端文件是怎样的?

回答你的

问题1:但是不知道这个链接所指向的文件是用什么语言写的?

答:php语言、asp语言、java等服务器端脚本语言

问题2:js的ajax请求支持什么样格式的文件?

答:我想你问的是发送的ajax请求的数据类型吧?也就是你上面例子中的data,

这个是有三种

{

    1.text文本类型(即普通字符串)

    2.xml

    3.json

}

问题3:然后怎么向我使用apache创建的web网站请求到数据?

答:

ajax_demo01.html文件

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>ajax无刷新弹窗</title>
<script type="text/javascript" src="./public.js"></script>
<script type="text/javascript">
/*动态绑定事件*/
window.onload = function() {
$('btn').onclick = function() {
//1.创建Ajax对象
var xhr = createXhr();
//2.初始化
xhr.open('get', 'ajax_demo01.php');
//3.当状态码发生改变时,自动执行的回调函数
xhr.onreadystatechange = function() {
//判断状态码变化值
if (xhr.readyState == 4) {
//状态接收完毕时,弹出内容字符串
alert(xhr.responseText);
}
;
}
//4.发送Ajax请求(由于是get请求,所以,请求数据在url,这里传Null)
xhr.send(null);
}
}
</script>
</head>
<body>
<input type="button" id="btn" value="确定">
</body>
</html>

自己封装的public.js文件

function createXhr(){
try{
return new XMLHttpRequest();
}catch(e){

}
try{
return new ActiveXObject('Microsoft.XMLHTTP');
}catch(e){

}
alert("Ajax对象由于浏览器罕用而创建失败");
}

function $(id){
return document.getElementById(id);
}

ajax_demo01.php文件

<?php
echo "hello ajax";

与ajax访问服务器相关的知识