腾讯云nodejs(腾讯云Nodejs部署小程序)

admin 135 2022-11-09

阿里云服务器优惠多,折扣错,惊喜多,请咨询:www.wqiis.com

本文目录一览:

js如何连接和操作腾讯云mysql数据库

首先是登陆腾讯云,登陆之后可以领取新手礼包,如图

进入云产品-数据库-CDB for MYSQL-立即选购,选购最低配的可用礼包抵扣使用一个月,购买完成

主页-右上角产品管理-使用中的数据库,这时我们会看见一个实例,首先我们进入管理页面对实例进行一些基本的设置

实例名可以随意更改,外网地址必须开启,否则我们就不能在自己的项目中和本地访问云数据库。进入账号管理页面修改自己的root密码,然后点击右上角的登录数据库

登陆完成之后如下图

这个和本地客户端操作基本相同,我就不详细阐述了

   二、使用一个demo来说明如何操作云mysql数据库

1.在实例上上新建一个为nodejs的数据库,然后新建一个为employee的表,新建四个字段 name  sex   age   email除了年龄为int其它的全部为varchar格式

2.新建一个TimLiu的文件夹,打开cmd,cd TimLiu, 初始化项目npm init ,按照它的提示一步一步的操作即可,安装mysql模块,npm insitall mysql, 这个模块的作用主要是连接mysql数据库。

3.新建一个model.js 文件,

   var mysql = require(‘mysql’);

   var connection = mysql.createConnection({

           host:'',

           user:'root',

           password:'123abc',

           database:' nodejs',

           port:6445

          })

connection.connect();

这里的host为我们在腾讯云上开通的外地址,端口号也是在外网地址里面,注意要把外网地址写分开,用户为默认的管理员用户,密码为我们在云平台上设置的密码,数据库为我们创建的nodejs数据库。

接下来我们对数据库进行增删改查操作

/**

* 增加员工

*/function addEmployee(){

   var employeeInsertSql = 'INSERT INTO employee(name,sex,age,email) VALUES(?,?,?,?)';

   var employeeInsertSql_Params = ['Tim','男',22,'18818216454@163.com']

   connection.query(employeeInsertSql,employeeInsertSql_Params,function(err,result){

       if(err) console.log('[INSERT ERR]-',err.message);

       console.log(result);

   }) }addEmployee()

 }

/**

* 更新员工

*/

function insertEmployee(){

   var employeeUpdateSql = "UPDATE employee SET name = ? WHERE age =?";

   var employeeUpdateSql_Params = ['Peter',22];

   connection.query(employeeUpdateSql,employeeUpdateSql_Params,function(err,result){

       if(err) console.log('[UPDATE ERR]-',err.message);

       console.log(result);

   })}

insertEmployee();

/**

*查询员工

*/  function getEmployee(){

   var employeeGetSql = "SELECT * FROM employee";

   connection.query(employeeGetSql,function(err,result){

       if(err) console.log('[SELECT ERR]-',err.message);

       console.log(result);

   })}

getEmployee();

/**

*删除员工

*/  function deleteEmployee(){

   var employeeDeleteSql = "DELETE employee WHERE name = ?";

   var employeeDeleteSql_Params = 'Peter';

   connection.query(employeeDeleteSql,employeeDeleteSql_Params,function(err,result){

       if(err) console.log('[DELETE ERR]-',err.message);

       console.log(result);

   })

   }deleteEmployee();

这样我们就可以愉快的操作数据库了

如果大家想把项目更模块化操作,可在model下面新建一个employee_two.js,代码如下

var mysql = require('mysql');var connection = mysql.createConnection({

   host:'',

   user:'root',

   password:'',

   database:'nodejs',

   port:})connection.connect();/**

* 增加员工

* @param {String} employee

* @param {Function} callback

*/exports.addEmployee=function(employee,callback){

   var employeeInsertSql = 'INSERT INTO employee(name,sex,age,email) VALUES(?,?,?,?)';

   var employeeInsertSql_Params = [employee.name,employee.sex,employee.age,employee.email]

   connection.query(employeeInsertSql,employeeInsertSql_Params,callback)}/**

* 更新员工

* @param {String} employee

* @param {Function} callback

*/exports.updateEmployee = function(name,age){

   var employeeUpdateSql = "UPDATE employee SET name = ? WHERE age =?";

   var employeeUpdateSql_Params = ['Peter',22];

   connection.query(employeeUpdateSql,employeeUpdateSql_Params,function(err,result){

       if(err) console.log('[UPDATE ERR]-',err.message);

       console.log(result);

   })}/**

* 查询员工

*

*/exports.getEmployee = function(){

   var employeeGetSql = "SELECT * FROM employee";

   connection.query(employeeGetSql,callback)}/**

* 删除员工

* @param {String} name

*/exports.deleteEmployee = function(name){

   var employeeDeleteSql = "DELETE employee WHERE name = ?";

   var employeeDeleteSql_Params = 'Peter';

   connection.query(employeeDeleteSql,employeeDeleteSql_Params,callback)

   }再在根目录下新建index.js,代码如下var db = require('./model/employee_two');//增加员工var employee = {

   name:'lisa',

   age:22,

   sex:"女",

   email:'99533212@qq.com'}db.addEmployee(employee,function(err,result){

   if(err) console.log("[INSERT err]-",err.message)

   console.log(result);})//删除员工db.deleteEmployee('Peter',function(err,result){

   if(err) console.log("[DELETE err]-",err.message)

   console.log(result);})//更新员工db.updateEmployee('Tim',23,function(err,result){

   if(err) console.log("[UPDATE err]-",err.message)

   console.log(result);})//查询员工db.getEmployee(function(err,result){

   if(err) console.log("[GET err]-",err.message)

   console.log(result);})

关于腾讯云短信接口的sig字段,sha256加密问题,nodejs

按照我下面的写法哈:

const crypto = require('crypto');

function sig()

{

    var strMobile = "这里是我的手机"; //tel的mobile字段的内容

    var strAppKey = "这里是我的key"; //sdkappid对应的appkey,需要业务方高度保密

    var strRand = "7226249334"; //url中的random字段的值

    var strTime = "1457336869"; //unix时间戳

    var buf = "appkey="+strAppKey+"random="+strRand+"time="

            +strTime+"mobile="+strMobile;

    var sig = crypto.createHash('sha256').update(buf, 'utf-8').digest('hex');

    return sig;

}

console.log(sig());

输出结果如下:

7b1e97051886abdbd66c684530db2ba01644f828f31e06d624d88aff5469faa0

原因就是文档里面强调了编码要使用 utf-8,而 js 默认编码不是这个,所以需要强制指定下。

另外这个 sig 的计算结果是和你的输出参数有关的,并不是不变的。

还有就是你的 mobile 和 appkey 怎么传递的都是中文,官方给的貌似都是数字和字母呃。

腾讯云小程序nodejs 怎么获得数据库对象

类似的小程序工具还是很多的。找个小程序开发工具也很容易的。微尘小程序就是很好的小程序开发工具。

腾讯云linux服务器能搭nodejs应用吗

由于不做php相关的东西,懒得装apache,干脆利用nodejs搭建一个本地的服务器用于测试。

nodejs这玩意儿吧,对做前端的介入后端简直就是一把利器。而且目前,nodejs也越来越有商用价值。

nodejs其实是非常底层的,从功能上说,它既是apache也是php。像搭建http服务器这种功能,本来是apache已经封装好的,但nodejs需要我们手动来搭建。其实在实际应用中,我们可以使用现成的框架。但这里,我想手动搭建,也加深一下对http服务器的理解。

Node.Js入门[PDF+相关代码]

Node.js入门开发指南中文版

Node.js安装与配置

Ubuntu 编译安装Node.js

我们node执行下面这个文件,我命名为http.js,它将创建一个httpServer并监听3000端口。

var PORT = 3000;

var http = require('http');

var url=require('url');

var fs=require('fs');

var mine=require('./mine').types;

var path=require('path');

var server = http.createServer(function (request, response) {

var pathname = url.parse(request.url).pathname;

var realPath = path.join("assets", pathname);

//console.log(realPath);

var ext = path.extname(realPath);

ext = ext ? ext.slice(1) : 'unknown';

fs.exists(realPath, function (exists) {

if (!exists) {

response.writeHead(404, {

'Content-Type': 'text/plain'

});

response.write("This request URL " + pathname + " was not found on this server.");

response.end();

} else {

fs.readFile(realPath, "binary", function (err, file) {

if (err) {

response.writeHead(500, {

'Content-Type': 'text/plain'

});

response.end(err);

} else {

var contentType = mine[ext] || "text/plain";

response.writeHead(200, {

'Content-Type': contentType

});

response.write(file, "binary");

response.end();

}

});

}

});

});

server.listen(PORT);

console.log("Server runing at port: " + PORT + ".");

上面我们还引入了一个mine.js,这是我自己写的,里面存储的是名值对,用于定义不同后缀的文件所对应的返回方式:

exports.types = {

"css": "text/css",

"gif": "image/gif",

"html": "text/html",

"ico": "image/x-icon",

"jpeg": "image/jpeg",

"jpg": "image/jpeg",

"js": "text/javascript",

"json": "application/json",

"pdf": "application/pdf",

"png": "image/png",

"svg": "image/svg+xml",

"swf": "application/x-shockwave-flash",

"tiff": "image/tiff",

"txt": "text/plain",

"wav": "audio/x-wav",

"wma": "audio/x-ms-wma",

"wmv": "video/x-ms-wmv",

"xml": "text/xml"

};

fs模块是用于读取文件的,提供读取文件的方法,其实仔细研究文档会发现,它有同步和异步两种读取方式。fs.exists这个方法网上很多文章写作path.exists,,现在推荐写作fs.exists这个方法。否则会报警:

需要注意的是,不仅浏览器访问html文件会形成一次访问,里面链接的js,css等外部文件也会分别形成一次http访问。所以,http.createServer的回调其实是在一次页面访问中执行了多次的。我们console.log(realPath)一下就可以看到:

这里并没有加入默认访问index.html的功能,所以访问地址要写全

关于腾讯云nodejs和腾讯云Nodejs部署小程序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注维启网络。

上一篇:腾讯云fpga(腾讯云FPGA)
下一篇:长沙公司建设网站(长沙市建设发展集团官网)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~