如何将数据从 AngularJS 前端传递到 Nodejs 后端? [英] How to pass data from AngularJS frontend to Nodejs backend?

查看:40
本文介绍了如何将数据从 AngularJS 前端传递到 Nodejs 后端?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我这里有一些有角度的 js 代码.

<html lang="zh-cn"><头><script src="Scripts/angular.min.js"></script><身体><div ng-app=""><表格>作者:<input type="text" ng-model="author"><br><br>标题:<input type="text" ng-model="title"><br><br>身体:<input type="author" ng-model="body"><br><br><输入类型=提交"值=提交"></表单>

</html>

和带有 MySQL 代码的节点 js 在这里.我能够从这个节点代码将数据传递到 MySQL DB.如何继续使用角度到节点 js?我来自 PHP 背景.我应该能够将数据从 angular js 形式发送到 MySQL 数据库.我可以从这里的节点代码将数据发送到 MySQL 数据库.

var mysql = require('mysql');var connection = mysql.createConnection({主机:'本地主机',用户:'',密码: '',数据库:'copedb'});连接.connect();var 应付 = {作者:'XYZXYZ',title: '测试节点',正文:'节点JS'};var query = connection.query('插入到对应集合中?',对应,函数(错误,结果){如果(错误){控制台错误(错误);返回;}控制台错误(结果);});

解决方案

它可以成为您入门的垫脚石:

索引.html

<html lang="zh-cn"><头><script src="Scripts/angular.min.js"></script><script src="Scripts/app.js"></script><body ng-app="myApp"><div ng-controller="myCtrl"><表格>作者:<input type="text" ng-model="author"><br><br>标题:<input type="text" ng-model="title"><br><br>身体:<input type="author" ng-model="body"><br><br><input type="submit" value="Submit" ng-click="submit()"></表单>

Angular 代码 app.js

var app = angular.module('myApp', []);app.controller('myCtrl', function($scope) {$scope.submit= function(){var 数据 = $.param({书:JSON.stringify({作者:$scope.author,标题:$scope.title,正文:$scope.body})});$http.post("/api/book/", data).success(function(data, status) {console.log('数据发布成功');})}});

server.js - Nodejs

var express = require('express');var mysql = require('mysql');var app = express();var connection = mysql.createConnection({主机:'本地主机',用户:'',密码: '',数据库:'copedb'});连接.connect();app.post('/api/book', function(req, res, next){varcop = req.body.params;var query = connection.query('插入到对应集合中?',对应,函数(错误,结果){如果(错误){控制台错误(错误);返回 res.send(err);} 别的 {返回 res.send('确定');}});应用程序听(8080);

I have some angular js code here.

<!DOCTYPE html>
<html lang="en">

  <head>
    <script src="Scripts/angular.min.js"></script>
        <body>    
      <div ng-app="">
        <form>
          Author:
          <input type="text" ng-model="author">
          <br>
          <br> Title:
          <input type="text" ng-model="title">
          <br>
          <br> Body:
          <input type="author" ng-model="body">
          <br>
          <br>
          <input type="submit" value="Submit">
        </form>
      </div>
    </head>
    </body>
</html>

and node js with MySQL code here. I am able to pass data to MySQL DB from this node code. How to go ahead with angular to node js? I am coming from a PHP background. I should be able to send data from angular js form to MySQL database. I am able to send data to MySQL database from node code here.

var mysql = require('mysql');

var connection = mysql.createConnection({
  host: 'localhost',
  user: '',
  password: '',
  database: 'copedb'
});
connection.connect();
var cope = {
  author: 'XYZXYZ',
  title: 'Testing Node',
  body: 'Node JS'
};
var query = connection.query('insert into cope set ?', cope, function(err, result) {
  if (err) {
    console.error(err);
    return;
  }
  console.error(result);
});

解决方案

It can be the stepping stone for you to getting started:

Index.html

<!DOCTYPE html>
<html lang="en">
<head>
   <script src="Scripts/angular.min.js"></script>
   <script src="Scripts/app.js"></script>
</head>
<body ng-app="myApp">    
  <div ng-controller="myCtrl">
    <form>
      Author:
      <input type="text" ng-model="author">
      <br>
      <br> Title:
      <input type="text" ng-model="title">
      <br>
      <br> Body:
      <input type="author" ng-model="body">
      <br>
      <br>
      <input type="submit" value="Submit" ng-click="submit()">
    </form>
  </div>
</body>

Angular code app.js

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
   $scope.submit= function(){
      var data = $.param({
        book: JSON.stringify({
            author: $scope.author,
            title : $scope.title,
            body : $scope.body
        })
      });

      $http.post("/api/book/", data).success(function(data, status) {
        console.log('Data posted successfully');
      })
   }
});

server.js - Nodejs

var express = require('express'); 
var mysql = require('mysql');
var app = express();

var connection = mysql.createConnection({
     host: 'localhost',
     user: '',
     password: '',
     database: 'copedb'
});
connection.connect();

app.post('/api/book', function(req, res, next){
   var cope = req.body.params;
   var query = connection.query('insert into cope set ?', cope, function(err, result) {
     if (err) {
       console.error(err);
       return res.send(err);
     } else {
       return res.send('Ok');
     }
});
app.listen(8080);

这篇关于如何将数据从 AngularJS 前端传递到 Nodejs 后端?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
前端开发最新文章
热门教程
热门工具
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆