Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 尝试在控制器中使用express时出错_Javascript_Angularjs_Node.js_Express_Stripe Payments - Fatal编程技术网

Javascript 尝试在控制器中使用express时出错

Javascript 尝试在控制器中使用express时出错,javascript,angularjs,node.js,express,stripe-payments,Javascript,Angularjs,Node.js,Express,Stripe Payments,我一直在尝试实现paymentCtrl来处理条带付款,但无法让express正常工作。当我执行这段代码时,我得到以下错误。我对这一点很陌生,我想了解我为什么会出现这个错误 错误: 未知提供程序:appProvider您的angular controller应注入$http模块,客户端代码中未定义应用程序,因为客户端不会从服务器继承代码 $http模块包含.post方法以及许多其他方法,如.get.put.delete等 angular.module('paymentController', []

我一直在尝试实现paymentCtrl来处理条带付款,但无法让express正常工作。当我执行这段代码时,我得到以下错误。我对这一点很陌生,我想了解我为什么会出现这个错误

错误:


未知提供程序:appProvider您的angular controller应注入
$http
模块,客户端代码中未定义应用程序,因为客户端不会从服务器继承代码

$http
模块包含
.post
方法以及许多其他方法,如
.get.put.delete

angular.module('paymentController', [])

.controller('paymentCtrl', function(app, passport, $http) {

  $http.post('/charge', {}, function(req, res){

  });

});
$http.post(
{}
)中的第二个参数是要传输到控制器的数据

最后,您需要一个服务器方法来检索POST请求

app.post('/charge', function(req, res) {
    // Your server endpoint for /charge POST action
    // req.body contains passed data.
});
当您试图使用Angular将数据发送到服务器时,您需要将表单数据绑定到您的模型,然后删除表单或侦听表单提交事件,并按照您希望的方式自己发出POST请求


由于您尚未包含整个HTML文档,因此很难看到是否包含任何其他错误,例如注释中所述的文档中缺少
ng controller
声明。

您的角度控制器应注入
$http
模块,客户端代码中未定义应用,因为客户端不会从服务器继承代码

$http
模块包含
.post
方法以及许多其他方法,如
.get.put.delete

angular.module('paymentController', [])

.controller('paymentCtrl', function(app, passport, $http) {

  $http.post('/charge', {}, function(req, res){

  });

});
$http.post(
{}
)中的第二个参数是要传输到控制器的数据

最后,您需要一个服务器方法来检索POST请求

app.post('/charge', function(req, res) {
    // Your server endpoint for /charge POST action
    // req.body contains passed data.
});
当您试图使用Angular将数据发送到服务器时,您需要将表单数据绑定到您的模型,然后删除表单或侦听表单提交事件,并按照您希望的方式自己发出POST请求

由于您没有包含整个HTML文档,因此很难看到是否包含任何其他错误,例如注释中所述的文档中缺少
ng controller
声明。

我假设您遵循了该操作,因此您需要做的只是:

您在paymentCtrl中编写的代码应该在
app之前复制到server.js中。请收听

// Set Application Static Layout
app.get('*', function(req, res) {
    res.sendFile(path.join(__dirname + '/public/app/views/index.html')); // Set index.html as layout
});

app.post('/charge', function(req, res){}); 


// Start Server
app.listen(port, function() {
    console.log('Running the server on port ' + port); // Listen on configured port
});
未知提供程序:appProvider我假设您遵循了,所以您需要做的只是:

您在paymentCtrl中编写的代码应该在
app之前复制到server.js中。请收听

// Set Application Static Layout
app.get('*', function(req, res) {
    res.sendFile(path.join(__dirname + '/public/app/views/index.html')); // Set index.html as layout
});

app.post('/charge', function(req, res){}); 


// Start Server
app.listen(port, function() {
    console.log('Running the server on port ' + port); // Listen on configured port
});

未知提供程序:appProvider我认为您遇到了角度错误。你能用JS代码更新你的整个HTML代码吗。angularHmmm中的控制器有问题,我不确定我是否理解你所说的“用JS代码更新整个HTML”是什么意思,因为你的payment.HTML缺少
ng控制器
。我想你是角度错误。你能用JS代码更新你的整个HTML代码吗。angularHmmm中的控制器有问题,我不确定我是否理解您所说的“用JS代码更新整个HTML”是什么意思,因为您的payment.HTML缺少
ng控制器
// Set Application Static Layout
app.get('*', function(req, res) {
    res.sendFile(path.join(__dirname + '/public/app/views/index.html')); // Set index.html as layout
});

app.post('/charge', function(req, res){}); 


// Start Server
app.listen(port, function() {
    console.log('Running the server on port ' + port); // Listen on configured port
});