AJAX 请求和普通浏览器请求的区别

Difference between AJAX request and a regular browser request(AJAX 请求和普通浏览器请求的区别)
本文介绍了AJAX 请求和普通浏览器请求的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

AJAX 请求和直接浏览器请求之间有区别吗(就网页的调用和加载方式而言)?

Is there a difference between an AJAX request and a direct browser request (in terms of how a web page is called and loaded)?

换句话说,我的意思是:直接服务器端请求的处理方式是否不同于客户端请求(由浏览器发起)?

In other words, I mean: is a direct server-side request handled in any way differently than a client-side request (initiated by the browser)?

推荐答案

就服务器而言,AJAX 请求与正常"浏览器请求相同,除了可能略有不同的 HTTP 标头.例如chrome 发送:

An AJAX request is identical to a "normal" browser request as far as the server is concerned other than potentially slightly different HTTP headers. e.g. chrome sends:

X-Requested-With:XMLHttpRequest

我不确定该标头是否标准化,或者它是否在每个浏览器中都不同,甚至是否在每个浏览器中都包含 .

I'm not sure if that header is standardized or not, or if it's different in every browser or even included at all in every browser.

我收回这一点,该标头是由 jQuery(可能还有其他 JS 库)发送的,而不是由浏览器发送的,如下所示:

edit: I take that back, that header is sent by jQuery (and likely other JS libraries), not the browser as is evidenced by:

var xhr = new XMLHttpRequest();
xhr.open('GET', '/');
xhr.send();

发送:

Accept:*/*
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Cookie: ....
Host:stackoverflow.com
If-Modified-Since:Sat, 31 Dec 2011 01:57:24 GMT
Referer:http://stackoverflow.com/questions/8685750/how-does-an-ajax-request-differ-from-a-normal-browser-request/8685758
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_7) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.12 Safari/535.11

这使我得出结论,默认情况下绝对没有区别.

which leads me to the conclusion that by default there is absolutely no difference.

这篇关于AJAX 请求和普通浏览器请求的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Update another component when Formik form changes(当Formik表单更改时更新另一个组件)
Formik validation isSubmitting / isValidating not getting set to true(Formik验证正在提交/isValiating未设置为True)
React Validation Max Range Using Formik(使用Formik的Reaction验证最大范围)
Validation using Yup to check string or number length(使用YUP检查字符串或数字长度的验证)
Updating initialValues prop on Formik Form does not update input value(更新Formik表单上的初始值属性不会更新输入值)
password validation with yup and formik(使用YUP和Formick进行密码验证)