当前位置: 首页 > news >正文

建站之星网站登录淮安企业网站

建站之星网站登录,淮安企业网站,wordpress首页筛选,怎么识别一个网站文章目录 前言1.安装Node.js环境2.创建node.js服务3. 访问node.js 服务4.内网穿透4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5.固定公网地址#x1f340;小结#x1f340; #x1f389;博客主页#xff1a;小智_x0___0x_ #x1f389;欢迎关注#xff1a;小结 博客主页小智_x0___0x_ 欢迎关注点赞收藏✍️留言 系列专栏小智带你闲聊 代码仓库小智的代码仓库 前言 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation原为 Node.js Foundation已与 JS Foundation 合并持有和维护亦为 Linux 基金会的项目。Node.js 采用 Google 开发的 V8 运行代码使用事件驱动、非阻塞和异步输入输出模型等技术来提高性能可优化应用程序的传输量和规模。这些技术通常用于资料密集的即时应用程序。 Node.js 大部分基本模块都用 JavaScript 语言编写。在 Node.js 出现之前JavaScript 通常作为客户端程序设计语言使用以JavaScript 写出的程序常在用户的浏览器上运行。Node.js 的出现使 JavaScript 也能用于服务端编程。Node.js 含有一系列内置模块使得程序可以脱离 Apache HTTP Server 或 IIS作为独立服务器运,下面将介绍如何简单几步实现远程公共网络下访问windwos node.js的服务端。 1.安装Node.js环境 官网下载node.js,我们选择64位一键安装 https://nodejs.org/zh-cn/download/ 安装好后我们打开cmd,输入命令有正常出来版本号表示安装成功,一键安装版,默认会配置环境变量。 node -v2.创建node.js服务 这里我们在本地创建一个简单的nodejs服务创建一个贪吃蛇页面小游戏来进行演示。 首先在本地创建一个文件夹并在文件夹中新建2个文件一个是js文件和一个html文件需要放在同个目录下然后使用vscode打开。 game.html文件nodetest.js文件 在game.html添加如下html代码并保存以下代码是一个html页面小游戏(贪吃蛇) !DOCTYPE html html headtitle贪吃蛇/titlemeta charsetUTF-8meta namekeywords content贪吃蛇meta nameDescription content这是一个初学者用来学习的小游戏style typetext/css*{margin:0;}.map{margin:100px auto;height:600px;width:900px;background:#00D0FF;border:10px solid #AFAEB2;border-radius:8px;}/style /headbody div classmap canvas idcanvas height600 width900/canvas /divscript typetext/javascript//获取绘制工具/*var canvas document.getElementById(canvas);var ctx canvas.getContext(2d);//获取上下文ctx.moveTo(0,0);ctx.lineTo(450,450);*/var cdocument.getElementById(canvas);var ctxc.getContext(2d);/*ctx.beginPath();ctx.moveTo(0,0);ctx.lineTo(450,450);ctx.stroke();*/var snake [];//定义一条蛇画蛇的身体var snakeCount 6;//初始化蛇的长度var foodx 0;var foody 0;var togo 0;function drawtable()//画地图的函数{for(var i0;i60;i)//画竖线{ctx.strokeStyleblack;ctx.beginPath();ctx.moveTo(15*i,0);ctx.lineTo(15*i,600);ctx.closePath();ctx.stroke();}for(var j0;j40;j)//画横线{ctx.strokeStyleblack;ctx.beginPath();ctx.moveTo(0,15*j);ctx.lineTo(900,15*j);ctx.closePath();ctx.stroke();}for(var k0;ksnakeCount;k)//画蛇的身体{ctx.fillStyle#000;if (ksnakeCount-1){ctx.fillStylered;//蛇头的颜色与身体区分开}ctx.fillRect(snake[k].x,snake[k].y,15,15);//前两个数是矩形的起始坐标后两个数是矩形的长宽。}//绘制食物 ctx.fillStyle black;ctx.fillRect(foodx,foody,15,15);ctx.fill();}function start()//定义蛇的坐标{//var snake [];//定义一条蛇画蛇的身体//var snakeCount 6;//初始化蛇的长度for(var k0;ksnakeCount;k){snake[k]{x:k*15,y:0};}drawtable();addfood();//在start中调用添加食物函数}function addfood(){foodx Math.floor(Math.random()*60)*15; //随机产生一个0-1之间的数foody Math.floor(Math.random()*40)*15;for (var k0;ksnake;k){if (foodxsnake[k].xfoodysanke[k].y)//防止产生的随机食物落在蛇身上{ addfood();}}} function move(){switch (togo){case 1: snake.push({x:snake[snakeCount-1].x-15,y:snake[snakeCount-1].y}); break;//向左走case 2: snake.push({x:snake[snakeCount-1].x,y:snake[snakeCount-1].y-15}); break;case 3: snake.push({x:snake[snakeCount-1].x15,y:snake[snakeCount-1].y}); break;case 4: snake.push({x:snake[snakeCount-1].x,y:snake[snakeCount-1].y15}); break;case 5: snake.push({x:snake[snakeCount-1].x-15,y:snake[snakeCount-1].y-15}); break;case 6: snake.push({x:snake[snakeCount-1].x15,y:snake[snakeCount-1].y15}); break;default: snake.push({x:snake[snakeCount-1].x15,y:snake[snakeCount-1].y});}snake.shift();//删除数组第一个元素ctx.clearRect(0,0,900,600);//清除画布重新绘制isEat();isDead();drawtable();} function keydown(e){switch(e.keyCode){case 37: togo1; break;case 38: togo2; break;case 39: togo3; break;case 40: togo4; break;case 65: togo5; break;case 68: togo6; break;}}function isEat()//吃到食物后长度加1{if(snake[snakeCount-1].xfoodxsnake[snakeCount-1].yfoody){addfood();snakeCount;snake.unshift({x:-15,y:-15});}}//死亡函数function isDead(){if (snake[snakeCount-1].x885||snake[snakeCount-1].y585||snake[snakeCount-1].x0||snake[snakeCount-1].y0){window.location.reload();}}document.onkeydownfunction(e) {keydown(e);} window.onload function()//调用函数 { start();setInterval(move,150);drawtable();} /script /body /html nodetest.js文件添加如下js代码以下代码意思是开启一个http服务,设置监听3000端口号 const http require(http);//加载文件模块 const fs require(fs);const hostname 127.0.0.1; //端口 const port 3000;const server http.createServer((req, res) {res.statusCode 200;res.setHeader(Content-Type, text/html);fs.readFile(./game.html, (err, data) {if (err) throw err;console.log(data.toString);res.end(data);});});server.listen(port, hostname, () {console.log(Server running at http://${hostname}:${port}/); });3. 访问node.js 服务 当我们编写好相关代码后,我们开始启动服务.在vscode控制台输入命令【注意需要进入到相应的文件目录下执行命令】 node .\nodetest.js有正常返回提示服务在本地3000端口下我们打开浏览器,访问http://127.0.0.1:3000/,出现贪吃蛇界面表示成功【游戏控制:键盘上下左右键】 4.内网穿透 这里我们使用[cpolar](cpolar - 安全的内网穿透工具)来进行内网穿透支持http/https/tcp协议不限制流量无需公网IP也不用设置路由器使用简单。 4.1 安装配置cpolar内网穿透 cpolar官网https://www.cpolar.com/ 访问cpolar官网注册一个账号然后下载并安装客户端具体安装教程可以参考官网文档教程。 windows系统在官网下载安装包后双击安装包一路默认安装即可。linux系统支持一键自动安装脚本详细请参考官网文档——入门指南 4.2 创建隧道映射本地端口 cpolar安装成功后在浏览器上访问本地9200端口http://localhost:9200使用cpolar邮箱账号登录。 点击左侧仪表盘的隧道管理——创建隧道创建一个指向本地3000端口的http隧道 隧道名称可自定义命名注意不要与已有的隧道名称重复协议选择http本地地址3000域名类型免费选择随机域名地区选择China vip 点击创建 隧道创建成功后点击左侧的状态——在线隧道列表,查看所生成的公网地址然后复制地址 打开浏览器器,我们使用上面公网地址进行访问,至此,我们成功将本地·node.js 服务发布到了公网地址 5.固定公网地址 由于以上使用cpolar所创建的隧道使用的是随机公网地址24小时内会随机变化不利于长期远程访问。因此我们可以为其配置二级子域名该地址为固定地址不会随机变化。 保留一个二级子域名 登录cpolar官网点击左侧的预留选择保留二级子域名设置一个二级子域名名称点击保留,保留成功后复制保留的二级子域名名称 保留成功后复制保留的二级子域名地址 配置二级子域名 访问http://127.0.0.1:9200/登录cpolar web UI管理界面点击左侧仪表盘的隧道管理——隧道列表找到所要配置的3000隧道点击右侧的编辑 修改隧道信息将保留成功的二级子域名配置到隧道中 域名类型选择二级子域名Sub Domain填写保留成功的二级子域名 点击更新 更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了保留过的二级子域名名称,将其复制下来 然后使用固定http地址打开浏览器访问 访问成功现在这个公网地址是固定的了不会随机变化。成功通过cpolar内网穿透实现在外远程访问nodejs服务无需公网IP 也不用设置路由器。 小结 今天我们认识了使用Nodejs搭建简单的HTTP服务器 - 内网穿透公网远程访问相信大家看完有一定的收获。 种一棵树的最好时间是十年前其次是现在 把握好当下合理利用时间努力奋斗相信大家一定会实现自己的目标加油创作不易辛苦各位小伙伴们动动小手三连一波~~~本文中也有不足之处欢迎各位随时私信点评指正
http://www.zqtcl.cn/news/789119/

相关文章:

  • 甘露园网站建设网站框架图片
  • 做网站怎样赚卖流量石家庄网站建设联系电话
  • wordpress 图片网站本地免费发布信息网站
  • 建设网站和别人公司重名新乡建设招标投标网站
  • 四川省建设厅网站证想开个网站怎样开公司
  • 做机械一般做那个外贸网站电商软件开发费用
  • 网站外链坏处龙岗网站设计信息
  • 郑州网站建设乙汉狮网络搜索优化网络推广
  • Dw做html网站百度推广竞价排名
  • 北京市电力建设公司网站万云网络网站
  • 校园网站开发方案做网站现在用什么语言
  • 网站建设学什么书中联建设集团股份有限公司网站
  • 制作个人业务网站go 做视频网站
  • 域名对网站建设有什么影响吗找人做仿网站
  • 网站建设翻译谁提供爱心代码html简单
  • 上海专业网站建站公司asp.net商务网站 包括哪些文件
  • 网站制作的重要流程营销团队找产品合作
  • 网站治做啊app易居销售系统
  • 定制跟模板网站有什么不一样如何做网站的订阅
  • 黑龙seo网站优化做网站,图片显示不出来
  • aspcms网站无法打开东莞网站推广方案
  • aspcms企业网站模板互联网推广模式有哪些
  • 高端 网站设计公司怎样开通微信公众号平台
  • 陕西省建设监理协会网站证书城乡建设管理局网站
  • 网站建设价目表建设商城网站报价
  • 天河企业网站建设杭州网站开发与设计
  • 涂料厂做网站有用吗廊坊关键词快速排名
  • 免费编程网站个人博客网站如何做SEO
  • 动漫做美食的视频网站佛山网站建设公司88
  • 衡水移动网站建设网站定制论坛