node.js - XMLHttpRequest中的url有什么用?

【字号: 日期:2022-09-22浏览:38作者:雯心

问题描述

1.前端请求:

var obtn = document.getElementById(’btn’);//按钮button var oh = document.getElementById(’h’);//标题h var xmlhttp = new XMLHttpRequest();obtn.onclick = function() {xmlhttp.open('get', 'xxxx', true);xmlhttp.send(); };xmlhttp.onreadystatechange = function() {if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { oh.innerHTML = xmlhttp.responseText;} }

2.node.js原生

var http = require(’http’); .....http.createServer(function(req, res) { ....... if (url.pathname == ’xxxx’) {res.end('收到请求'); }}).listen(8000, function() { console.log(’server on 8000 port’);})

点击button后发送请求,后台判断url做出相应的操作(在这里是将 h1的innerHTML更改为“收到请求”)。

我并没有使用到xxxx文件,所以请问这个xxxx文件在这是个什么作用呢?

问题解答

回答1:

url.pathname 是请求资源路径, 跟你服务器上有没有这个资源没有关系

首先一个urlhttp://www.baidu.com:8000/hello?q=sss可拆分成好些组成部分, 如:protocol http://hostwww.baidu.comport8000pathname /helloquery ?q=sss等等

正好你访问的是 http://localhost:8000/xxxx

说明你请求的pathname便是 /xxxx , 想要返回什么内容, 随你的代码设定

不要把思维限定在服务器上是否有文件资源, 这可以协定为一个暗号, 请求土豆返回西红杮

对于wsgi的概念你的路还很长, 建议你直接看express教程

回答2:

你这里的xxxx只是path路径而已,他不是一个文件,一个url的path。

回答3:

xxx是你这个请求要发送的地址,就往你那个node起来的端口 8000发送

相关文章: