Node.js Error: Protocol “https:“ not supported. Expected “http:“

这篇具有很好参考价值的文章主要介绍了Node.js Error: Protocol “https:“ not supported. Expected “http:“。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

const http = require('http')
const https = require('https')


let urlCdn = "https://baidu.com"    
let urlObj = new URL(urlCdn)
const client = urlObj.protocol == 'https:' ? https : http
console.log(urlObj.protocol)

    client.get(urlCdn, async (httpRes) => {
      
    })

Node的http模块:使用node创建htto服务器(重点)
1、web服务器:网站服务器,主要提供网上信息的浏览服务

2、web资源

(1)静态资源:服务器没有修改的,客户端每次请求的结果都是一样的资源。(CSS、image等)

(2)动态资源:经过服务器处理的资源信息

3、HTTP协议:HyperText Transfer Protocol,超文本传输协议。规范了客户端和服务器之间进行交互的数据格式。是基于’请求‘--’响应‘的协议

(1)请求(request):客户端(浏览器)向服务器发送信息(发送请求)--http请求

(2)响应(response):服务器接收到客户端的请求后做的响应--http响应

(3)内容:

基本信息:请求地址(url)、请求方式(get/post)、请求-响应是否完成、路由地址(ip地址)

响应头形象:http协议的版本号、200是状态码(表示请求-响应已经完成)、响应文本的格式

请求头信息:User-Agent(客户端浏览器的内核)、Host(请求的服务器的地址和端口号)、Accept发送请求的文本格式

(4)状态码:不同的状态码反应了请求--响应过程的完成情况

200:请求-响应的过程已经成功完成

204:请求-响应已经完成,但是没有响应数据

以3开头的状态码表示页面重定向了

404:客户端请求的资源不存在

403:服务器拒绝请求

400:请求的语法错误

500:服务器错误,无法响应请求

503:服务器无法使用

(5)响应信息的格式:采用‘大类型/具体类型’的方式定义

text/plain:普通文本格式

text/html:html文件

text/css:css文件

application/javascript:js文件

4、node中http模块的应用:

(1)导入:require(‘http’)

(2)创建服务器:http.createServer(function(){ }),返回一个http的服务器对象

(3)启动服务器监听:listen(端口号,服务器地址、callback)

5、在服务器端获取客户端请求数据的方式 :是通过请求对象request来完成的

(1)req.method:获取客户端的请求方式

(2)req.url:获取客户端的请求地址

(3)req.url.query:获取的是客户端采用get方式向服务器发送的请求数据

get方式发送的请求数据:是拼接在url地址之后的

http://127.0.0.1:9000?userName=张三&age=25

‘?’:是url和请求参数(query)之间的分隔符

‘&’:是参数之间的分隔符

(4)req.body:获取的是客户端采用post方式向服务器发送的请求数据

post方式发送请求时:先将请求地址单独发送出去,然后将请求参数和页面的body绑定在一起进行发送

在node的http服务器端需要使用querystring模块对客户端发送的body信息进行转换后才能得到请求参数
 

参考链接:

https://stackoverflow.com/questions/34147372/node-js-error-protocol-https-not-supported-expected-http

http://chat.xutongbao.top/

 文章来源地址https://www.toymoban.com/news/detail-557709.html

到了这里,关于Node.js Error: Protocol “https:“ not supported. Expected “http:“的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • node连接mysql时报错Client does not support authentication protocol requested by server; consider upgrading MySQL client

    尝试用node编写一个简单的登录接口,结果启动服务后请求接口出现了该错误。 其问题就是访问的工具身份验证协议过于落后,在node内安装的2.18.1 mysql包。 解决: 先登录数据库。 use mysql;(mysql为数据库名) 提示Database changed; 查询表中信息 ;     之后执行以下语句 修改好了

    2024年02月05日
    浏览(58)
  • npm does not support Node.js的解决办法

    1、查看npm和nodejs的版本是否配套。  2、因为我的使用了npm install -g npm 把npm的版本升级到了9.几 导致运行项目的时候提示npm v9.8.0 does not support Node.js v14.16.1,查阅了很多资料之后感觉太麻烦了,现在问题解决了,就把这个解决方法记录下来。 (1)首先去到C盘,打开到C:/user

    2024年02月13日
    浏览(63)
  • 【解决】Error: Node Sass does not yet support your current environment

    前言 :今天在做一个从另外的一台电脑环境运行的vue项目,在运行时发现报错,找了许久才解决问题。 问题原因 :当前项目的node-sass版本与本机的node版本不一致导致的。 解决方案 : 1.先卸载node-sass 2.再安装node-sass 扩展问题 : 重新运行时,报错Node Sass version 6.0.1 is incomp

    2024年02月16日
    浏览(41)
  • ERROR (node:9788) Warning: require() of ES modules is not supported.

    后台报错内容展示: 前端报错内容展示: 点开第一个报错项显示如下: 点开报错信息抛出的其他链接,并没有找到什么有效信息,一开始我以为是那块代码写的有问题,但报错信息上显示 require() of ES modules is not supported. ,所以我推测是版本问题。 axios版本太高了,不兼容导

    2024年02月11日
    浏览(61)
  • Node js 升级更新后 npm用不了 npm npm does not support Node.js 或者node版本太低

    一开始是出现node版本太低,然后升级了node发现升级后npm不支持,发现是node的版本需要与npm对应,而npm没法跨级升,下面教大家解决办法: 一、检查你的nodejs和npm的版本能否对应得上 (注:如果npm版本查询显示空也可以用下面的方法) 这里附上 npm和node版本对照官网 : 以往的

    2024年02月02日
    浏览(53)
  • ❤ error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)

    使用Git的时候今天突然遇到了问题 今天突然使用Mac报错: Git遇到一个问题,如标题 1.搜罗一大堆最终指向这是http2本身的bug。 1.(推荐)直接换掉Git的http版本 git config --global http.version HTTP/1.1 2.更改Git的http克隆为ssh,使用ssh进行提交和拉取代码 — 使用ssh连接Git操作指南(…更新

    2024年02月04日
    浏览(50)
  • Error: Node Sass does not yet support your current environment: OS X Unsupported architecture (arm64

    运行安装 node-sass 的项目报错如下 不支持 Mac M1 的 Arm 架构 解决方式 node-sass 对 node 版本的支持比较慢,通常会落下多个正式的 node 版本,一般来说安装当前版本的前两到三个正式版本即可 解决方式 以 Mac M1 的 brew 安装器的操作为例

    2024年02月15日
    浏览(54)
  • npm WARN cli npm vxxx does not support Node.js vxxx. This version of npm supports the following

    npm 与 node 的版本不匹配,如果不想切换node,将npm卸载再安装即可 npm与node版本匹配查看 卸载npm npm uninstall npm -g 安装指定版本的npm npm install npm@{版本号} -g 示例: npm install npm@5.6.0 -g 安装完成之后,使用命令查看版本 npm --version 建议不要使用cnpm安装,会有各种莫名其妙的bug出

    2024年02月04日
    浏览(62)
  • nginx配置https后报错nginx: [emerg] https protocol requires SSL support in XXX.conf详细解决方法

    最近,在测试环境的nginx里增加了一个 https 配置: 然后,执行命令: 结果,nginx就报错了: 百度发现,是之前安装nginx时没有安装ssl模块,需要重新安装一个nginx。步骤如下: 1.下载好nginx安装包,例如 nginx-1.17.2.tar.gz 2.查看下目前nginx使用的配置是什么: 发现,确实没有ss

    2023年04月08日
    浏览(55)
  • npm v10.0.0 is known not to run on Node.js v12.8.0. This version of npm supports the following node

    执行命令时报错:ERROR: npm vxxx is known not to run on Node.js vxxx.  This version of npm supports the following node versions: `^18.17.0 || =20.5.0`. You can find the latest version at https://nodejs.org/. 报错说你现在的npm版本是vxxx 不支持你现在Node的版本vxxx,需要把node版本改成npm支持的版本,在node官网你可以找

    2024年02月08日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包