今天刚入坑学习ajax,刚开始就遇到服务器这一知识盲区,经过解决各种问题,成功运行的代码,下面就分享给你们,希望能够帮你们解决问题。

(一)node.js安装

1、进入官网,下载对应版本

2、下载了.msi文件,双击或者右键安装,即可(安装过程简单在此不详细说明。安装路径自行安排,我的安装路径为F:\node.js)

3、在cmd下输入

node -v
npm -v

查看node安装是否成功

4、(可选配置)设置npm在全局模块下路径和缓存cache路径
由于默认会将模块安装在C:\Users\用户名\AppData\Roaming路径下的npm和npm_cache中会占用c盘空间,这里提供了可以修改路径的方法(我自己修改了路径)

npm config set prefix "F:\node.js\node_global"npm config set cache "F:\node.js\node_cache"

5、(若执行了4这个步骤则需要进行环境变量配置)配置环境变量
右键我的电脑->属性->高级系统设置->高级下的环境变量->用户变量下的PATH进行配置(默认会有一个c盘目录下的需要改成下面地址)

F:\node.js\node_global;

(二)nodemon安装

全局安装

npm install -g nodemon

本地安装

npm install --save-dev nodemon

(三)原生node.js本地服务器搭建

在F:\node.js下新建一个Server文件夹,进入该文件夹后新建一个server.js文件,键入代码

// 导入http模块
var http = require("http");
// 开启一个监听事件  每次请求http都会触发这个事件
http.createServer(function(req,res){// 把编码设置为 utf-8res.write('<head><meda charset="utf-8"/></head>');// 设置响应体信息res.write('Hello World');// 结束事件res.end();// 设置监听端口号
}).listen(3000);


在server文件夹下按住shift+右键,点击“在此处打开命令窗口”


输入

node server.js


打开浏览器输入

localhost:3000

看到Hello World,说明搭建成功

(四)使用express框架搭建本地服务器

1、把npm镜像改成淘宝镜像

npm config set registry https://registry.npm.taobao.org


2、全局安装express命令安装工具

npm install -g express-generator


3、安装express框架

 npm install -g express


4、安装成功后,使用express框架构建项目
(1)创建项目(servertest为文件名称)

express servertest -e


(2)在C:\Windows\System32下找到servertest,剪切后放入F:\node.js文件夹下(找不到可进行搜索)

(3)在servertest文件夹下shift+右键用命令窗口打开,输入

npm install

安装依赖

(4)启动项目

npm start


(5)修改app.js文件,使其识别html文件,增加监听窗口3000
用下面代码替换app.set(‘view engine’, ‘ejs’),public文件下放入index.html,为入口页面

app.engine('.html',require('ejs').__express);
app.set('view engine','html');


(5)注意事项:关闭服务器时,最好在cmd上输入ctrl+c结束进程,在点击×关闭。当修改了node.js服务器端代码后,重启服务器才能生效。

(五)向服务器发送请求并获得服务器返回结果

1、打开app.js,创建一个first路由并设定服务器返回信息

app.get('/first',(req, res) => {res.send('Hello Ajax');
});app.listen(3000);
console.log('服务器启动成功');

2、在public文件夹下放入test.html,代码如下

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title>
</head>
<body><script type="text/javascript">// 1.创建ajax对象var xhr = new XMLHttpRequest();// 2.告诉Ajax对象要向哪发送请求,以什么方式发送请求// 1)请求方式 2)请求地址xhr.open('get', 'http://localhost:3000/first');// 3.发送请求xhr.send();// 4.获取服务器端响应到客户端的数据xhr.onload = function (){console.log(xhr.responseText)}</script>
</body>
</html>

3、servertest文件下shift+右键用命令窗口打开,输入powershell,进入window powershell模式,再输入

nodemon app.js


看到服务器启动成功,说明服务器启动完成

4、打开网址

http://localhost:3000/test.html

可以看到控制台打印了服务器返回的信息

可能遇到的问题

1、端口被占用

解决方法
查看哪个占用了3000端口号

netstat -ano | findstr :3000


接着输入其PID即可(本次PID为4724)

taskkill -PID 4724 -F

2、Powershell禁止执行脚本

Powershell脚本4种执行权限
(1)Restricted——默认的设置, 不允许任何script运行
(2)AllSigned——只能运行经过数字证书签名的script
(3)RemoteSigned——运行本地的script不需要数字签名,但是运行从网络上下载的script就必须要有数字签名
(4)Unrestricted——允许所有的script运行

原因:由于windows默认不允许任何脚本运行,默认为Restricted,所以输入

Set-ExecutionPolicy Unrestricted

即可改变权限。

Window7在此时可能遇到新的问题
“Set-ExecutionPolicy : 对注册表项“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell”的访问被拒绝。”错误

原因:这是由于没有打开管理员权限启动命令。

Ajax入门-搭建服务器并使用ajax技术向服务器发送一个请求并获得服务器返回的数据相关推荐

  1. node.js request get 请求怎么拿到返回的数据_从零开始用nodejs写一个简单的静态服务器

    nodejs搭建服务器第一步 const http = require("http")const PORT = 8000 const server = http.createSer ...

  2. 私服服务器原理,传奇私服新手gm如何假设一个属于自己的服务器

    对于大多数传奇私服玩家来说拥有一个属于自己的服务器是一个非常具有吸引力的事情,其实对于大多数玩家来说想要做到这点都是非常困难的,因为他们之前可能是完全没有接触过传奇私服游戏相关的技术设置,对于大多数玩 ...

  3. 微软服务器更新通知,产品技术-微软安全公告 MS17-010 Microsoft Windows SMB 服务器安全更新 (4013389)-新华三集团-H3C...

    1漏洞信息: 此安全更新程序修复了 Microsoft Windows 中的多个漏洞.如果攻击者向 Windows SMBv1 服务器发送特殊设计的消息,那么其中最严重的漏洞可能允许远程执行代码. 2 ...

  4. syslog 华为 服务器_配置华为交换机把日志发送到远程centos syslog服务器上

    huawei switch: #指定发送消息基本,表示从0-7都发送 info-center source default channel 2 log level debugging #指定从哪个接口 ...

  5. 关于对发送HTTP请求以及解析服务器返回的数据操作的提取到一个公共类中进行封装

    创建一个名为HttpUtil的类并提供名为sendHttpRequest静态方法. 相关代码如下: package com.hzy.networktest; import java.io.Buffer ...

  6. Ajax入门笔记(原生Ajax、jQuery、axios、fetch、跨域SONP、CORS)

    文章目录 一.基础知识 1.1AJAX简介 1.2 AJAX的特点 1.2.1 AJAX 的优点 1.2.2 AJAX 的缺点 1.3 XML简介 1.4 HTTP简介 1.4.1 请求报文 1.4. ...

  7. ajax技术的实质是什么意思,什么是Ajax?Ajax的原理是什么?Ajax的核心技术是什么?Ajax的优缺点是什么?...

    Ajax是一种无需重新加载整个网页,能够更新部分网页的技术.Asynchronous JavaScript and XML的缩写,是JavaScript.XML.CSS.DOM等多个技术的组合. Aj ...

  8. ajax入门学习(一)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/54800237冷血之心的博客) ajax入门学习(一) ajax入门 ...

  9. java Ajax入门

    java Ajax入门 文章目录 java Ajax入门 前言 一.同步和异步 二.Ajax的使用 JavaScript方法 JQuery方法 总结 前言 接下来整理一下Ajax相关的内容,AJAX( ...

最新文章

  1. mysql 当前时间减指定时间_MySQL实现当前数据表的所有时间都增加或减少指定的时间间隔(推荐)...
  2. HIbernate的优缺点
  3. Web前端开发应该避免的几个思维误区
  4. linux下挂载ntfs(windows)文件系统
  5. 眼图观测实验报告_眼图观察测量实验
  6. SqlServer 备份还原教程
  7. spring IOC容器 Bean 管理——基于注解方式
  8. idea中配置maven仓库
  9. java中访问控制修饰符什么含义_关于Java中访问控制修饰符的来由及浅解
  10. java 有序集合_java有哪些有序集合?
  11. 新手学习算法----二叉树(将一个二叉查找树按照中序遍历转换成双向链表)
  12. 手机阅读成全球3G赢利点:一年1亿美元市场
  13. VMWARE:NAT模式连接外网
  14. matlab设置等高线标注字体大小,matlab设置图中字体和线条大小等(转)
  15. hi3798 run linux,EC6108V9(HI3798MV100)刷(linux)ubuntu16.04
  16. 关于antd中嵌套表格expandable属性如何设置为可变化的
  17. 【华人学者风采】聂飞平 西北工业大学
  18. 史玉柱自述创业历程,我思故我在
  19. python热力图参数_python3.5数据处理——百度地图热力图传值
  20. 维修上门预约系统简单讲

热门文章

  1. 【计算机网络】因特网通信
  2. 磁盘挂载报错/dev/sdb1 is apparently in use by the system
  3. C++反汇编代码分析--函数调用
  4. 如何下载IEEE论文
  5. epoll LT ET 区别 | Nginx epoll 原理 listend 用 LT
  6. ubuntu开机停留在(initramfs)页面
  7. Google搜索设置在新标签页打开的方法
  8. Java基础冒泡排序——高低输出十个学生的成绩
  9. scale实现页面缩放自适应
  10. StarUML使用说明