node命令行服务器(http-server)和跨域的实现

作者:江南Code 时间:2021-03-10 05:00:09 

http-server是一个简单的命令行http服务器,基于nodejs,下载地址:https://nodejs.org/en/download/ 。下面介绍怎么安装使用http-server(需要node环境,没有环境的请先安装好nodejs)。http-server官方地址:https://www.npmjs.com/package/http-server 。

1、安装(全局安装加 -g)
全局安装:npm install http-server -g

2、使用(以windows环境为例)
cd到目标文件夹(也就是需要启动服务的文件夹),输入http-serevr 回车,也可以shift+鼠标右键打开Powershell窗口,输入http-server。即在当前文件夹开启了一个http服务器。
默认的服务器地址为:localhost:8080127.0.0.1:8080

3、设置http-server允许跨域请求
跨域是浏览器的一种安全策略(同源策略)导致的。所谓同源策略是指:请求的url地址,必须与浏览器上的url地址处于同域上。同一个域(同源)是指协议域名端口都相同,如果其中一个不同就是不同的域,就会出现跨域。解决跨域的方式有3种:①、jsonp、②、服务端添加跨域头(Access-Control-Allow-Origin)③、设置代理服务器。下表列出了几种跨域的情况。

node命令行服务器(http-server)和跨域的实现

使用http-server,解决跨域的方法是在启动http-server时,加上 --cors 跨域头: http-serrver --cors

添加了跨域头,如下:

node命令行服务器(http-server)和跨域的实现

没有配置跨域,请求失败:

node命令行服务器(http-server)和跨域的实现

4、http-server参数说明
开启一个端口为8888的http服务器,设置允许跨域访问和自动打开: http-server --cors -p 8888 -o

-p 端口号 (默认 8080)
-a IP 地址 (默认 0.0.0.0)
-d 显示目录列表 (默认 'True')
-i 显示 autoIndex (默认 'True')
-e or --ext 如果没有提供默认的文件扩展名(默认 'html')
-s or --silent 禁止日志信息输出
--cors 启用 CORS via the Access-Control-Allow-Origin header
-o 在开始服务后打开浏览器
-c 为 cache-control max-age header 设置Cache time(秒) , e.g. -c10 for 10 seconds (defaults to '3600'). 禁用 caching, 则使用 -c-1.
-U 或 --utc 使用UTC time 格式化log消息
-P or --proxy Proxies all requests which can't be resolved locally to the given url. e.g.: -P http://someurl.com
-S or --ssl 启用 https
-C or --cert ssl cert 文件路径 (default: cert.pem)
-K or --key Path to ssl key file (default: key.pem).
-r or --robots Provide a /robots.txt (whose content defaults to 'User-agent: *\nDisallow: /')

来源:https://blog.csdn.net/weixin_43310551/article/details/86304618

标签:node,命令行服务器,跨域
0
投稿

猜你喜欢

  • python编程的核心知识点总结

    2023-09-26 21:24:24
  • ThinkPHP中URL路径访问与模块控制器之间的关系

    2024-05-05 09:16:40
  • Pytorch中的variable, tensor与numpy相互转化的方法

    2021-08-16 13:59:50
  • Insert into与AddNew哪一个更好?

    2009-10-28 18:30:00
  • 链接与文本标签们

    2008-04-04 18:07:00
  • 用Python读取几十万行文本数据

    2023-10-13 21:56:04
  • Javascript编写Asp时需要注意的一些地方

    2008-04-06 14:20:00
  • 英文版面设计的8个禁忌

    2009-10-14 20:42:00
  • Python中的线程操作模块(oncurrent)

    2021-08-15 14:08:15
  • 对python .txt文件读取及数据处理方法总结

    2022-08-04 02:36:07
  • 对numpy中轴与维度的理解

    2022-03-20 11:58:33
  • Python中关于Sequence切片的下标问题详解

    2021-05-30 22:49:47
  • 浅谈MySQL中四种常用存储引擎

    2024-01-23 00:10:29
  • SpringBoot 中使用JSP的方法示例

    2023-06-16 22:35:09
  • 浅谈Python函数式编程的返回函数与匿名函数

    2021-02-22 13:40:36
  • sql server自动生成拼音首字母的函数

    2024-01-25 15:27:19
  • 如何在不支持数据库的ASP空间里获取更大的数据库权限?

    2010-06-18 19:35:00
  • Sql Server里删除数据表中重复记录的例子

    2024-01-19 18:37:31
  • Python 经典贪心算法之Prim算法案例详解

    2024-01-01 18:18:27
  • 有关asp的系统变量ServerVariables (“HTTP_USER_AGENT“)?

    2009-10-29 12:12:00
  • asp之家 网络编程 m.aspxhome.com