小编Hon*_*arc的帖子

如何在Protractor中进行HTTP GET + POST请求

我在Protractor中发送HTTP get请求时遇到问题.实际上,我需要在UI中执行某些操作后检查数据库中的数据.

如果我能够使用JQuery做到这一点将非常有用,但我无法找到如何在Protractor中使用JQuery的方法.

需要帮忙 !!

实际上,我们确实尝试使用Node.js lib,如下所示,但面临问题.

var http = require('http');

var json_data;

http.get('SiteUrl', function(response) {
    var bodyString = '';
    response.setEncoding('utf8');

    response.on("data", function(chunk) {
        bodyString += chunk;
    });

    response.on('end', function() {

        json_data = bodyString;
        console.log("1---->" + json_data);
    });

}).on('error', function(e) {
    console.log("There is an error in GET request");
});
console.log("2---->" + json_data);
Run Code Online (Sandbox Code Playgroud)

在调试之后,我们发现问题是Protractor没有等待HTTP请求完成并且只是传递.我们2---->先在控制台中获得第一名1---->.

jquery node.js jasmine protractor

6
推荐指数
2
解决办法
1万
查看次数

Gulp Concat没有输出文件

我试图用gulp的concate模块连接我的js文件.

我的js文件的项目路径是:project/public/js/vendor/.

在供应商中我使用的是所有插件,我想将它们合并为一个文件

我使用以下代码来执行我的任务.

var gulp = require('gulp'),
concat = require('gulp-concat');

gulp.task('scripts',function(){
    return gulp.src('./vendor/*.js')
        .pipe(concat('global.js'))
        .pipe(gulp.dest('concat/'));

});

gulp.task('default', ['scripts']);
Run Code Online (Sandbox Code Playgroud)

我想将文件导出到位于/ js的concat文件夹,但我没有文件.代码执行时没有错误报告.

[gulp] Using gulpfile /var/www/vhosts/site.dev/httpdocs/project/gulpfile.js
[gulp] Starting 'scripts'...
[gulp] Finished 'scripts' after 9.2 ms
[gulp] Starting 'default'...
[gulp] Finished 'default' after 8.8 ?s
Run Code Online (Sandbox Code Playgroud)

我做错什么了吗?

编辑1

我试图按照建议记录并返回计数:

[gulp] Using gulpfile /var/www/vhosts/site.dev/httpdocs/laravel/gulpfile.js
[gulp] Starting 'scripts'...
[gulp] Finished 'scripts' after 12 ms
[gulp] Starting 'default'...
[gulp] Finished 'default' after 9.37 ?s
Run Code Online (Sandbox Code Playgroud)

这是否意味着它没有选择任何js?

javascript file node.js gulp

6
推荐指数
1
解决办法
3266
查看次数

gyp ERR!堆栈错误:`C:\ Program Files(x86)\ MSBuild\12.0\bin\msbuild.exe`失败,退出代码:1

当我跑步时npm install,我面临以下错误.我无法找到问题所在.

我找到这个问题需要一些帮助.

d:\testing\node-sample-module\node_modules\ffi\node_modules\ref\node_modules\nan\nan_implementation_pre_12_inl.h(112): error C2668: 'v8::FunctionTemplate::New' :  ambiguous call to overloaded function [d:\TESTING\node-sample-module\node_modules \ffi\node_modules\ref\build\binding.vcxproj]
C:\Users\SELVA\.nw-gyp\0.8.5\deps\v8\include\v8.h(3344): could be 'v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::FunctionCallback,v8::Handle<v8::Value>,v8::Handle<v8::Signature>,int)'
C:\Users\SELVA\.nw-gyp\0.8.5\deps\v8\include\v8.h(3343): or v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::InvocationCallback,v8::Handle<v8::Value>,v8::Handle<v8::Signature>,int)' while trying to match the argument list '(int, v8::Local<v8::Value>,    v8::Local<v8::Signature>)'

gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\12.0\bin\msbuild.exe` failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (c:\Users\SELVA\AppData\Roaming\npm\node_modules\nw-gyp\lib\build.js:267:23)
gyp ERR! stack at ChildProcess.emit (events.js:98:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:820:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "node" "c:\\Users\\SELVA\\AppData\\Roaming\\npm\\node_modules\\nw-gyp\\bin\\nw-gyp.js" …
Run Code Online (Sandbox Code Playgroud)

c++ python msbuild node.js

6
推荐指数
1
解决办法
2万
查看次数

NodeJS ExpressJS - 如何记录生产服务器的错误?

如何将ExpressJS应用程序中的任何错误记录到文件中?

我知道我可以使用monolog轻松记录Slim框架:

$app->get('/tickets', function (Request $request, Response $response) {
    $this->logger->addInfo("Something interesting happened");

    $mapper = new Simon\TicketMapper($this->db);
    $tickets = $mapper->getTickets();

    $response->getBody()->write(var_export($tickets, true));
    return $response;
});
Run Code Online (Sandbox Code Playgroud)

在Express中,我通常将错误记录到控制台进行开发:

Model.findOne(options, function(err, doc) {

    var output = {};
    if (err) {
        console.log("Error retrieving doc: " + err);
    }
Run Code Online (Sandbox Code Playgroud)

但是在我的生产服务器中,当应用程序出错时,我确实需要一个有用的日志文件.

有任何想法吗?

在Express中app.js,它具有:

// development error handler
// will print stacktrace
if (app.get('env') === 'development') {

  app.use(function(err, req, res, next) {
    res.status(err.status || 500);
    res.render('error', {
        message: err.message,
        error: …
Run Code Online (Sandbox Code Playgroud)

error-log node.js express

6
推荐指数
2
解决办法
8211
查看次数

如何在.ejs视图引擎中打印cookie

如何在表单属性中打印cookie值?

这是我到目前为止的代码.

if(req.body.remember_me){
    res.cookie("cookie_email_id", req.body.email);
    res.cookie('password', req.body.password);
}else{
    res.clearCookie("cookie_email_id");
    res.clearCookie("password");
}
Run Code Online (Sandbox Code Playgroud)

我已经设置了控制台cookie中的My Cookie

document.cookie :

cookie_email_id=abc%40gmail.com; password=123456789

node.js express

6
推荐指数
2
解决办法
582
查看次数

request-promise:为长请求设置超时

我正在使用请求承诺库并尝试根据其文档将超时设置为毫秒。我在服务器端很少有请求需要超过一分钟才能响应,无论我为超时设置什么值,请求总是在一分钟后超时。在请求中设置读取超时的正确方法是什么?

我的请求

rp({
  uri: "http://something.com/long_running_request",
  timeout: 180000
})
Run Code Online (Sandbox Code Playgroud)

javascript timeout requestjs request-promise

6
推荐指数
0
解决办法
1万
查看次数

为什么在 PhpStorm 中找不到 yarn 作为包管理器?

我在 Ubuntu 18.04 上安装了纱线

yarn --version

0.32
Run Code Online (Sandbox Code Playgroud)

但是PhpStorm -> Settings -> Languages and Frameworks -> Node.js and NPM里面说没有找到纱线。

PhpStorm

phpstorm webstorm yarnpkg

6
推荐指数
1
解决办法
4342
查看次数

将嵌套数组转换为对象

我试图用reduce嵌套数组转换为对象.

我想转换 var bookprice = [["book1", "$5"], ["book2", "$2"], ["book3", "$7"]];

var bookpriceObj = {
    "book1": "$5", 
    "book2": "$2",
    "book3": "$7"
};
Run Code Online (Sandbox Code Playgroud)

这是我试过的

var bookprice = [["book1", "$5"], ["book2", "$2"], ["book3", "$7"]];
bookpriceObj = {};
bookprice.reduce(function(a, cv, ci, arr){
    for (var i = 0; i < arr.length; ++i)
        bookpriceObj [i] = arr[i];

    return bookpriceObj ;
})
Run Code Online (Sandbox Code Playgroud)

但是以下结果并不是理想的结果

{
    ["book1", "$5"]
    ["book2", "$2"]
    ["book3", "$7"]
}
Run Code Online (Sandbox Code Playgroud)

javascript arrays javascript-objects

6
推荐指数
1
解决办法
263
查看次数

验证谷歌 reCaptcha 时输入响应和密码无效

在向 google recaptcha api 发出发布请求时,我真的很难获得成功的响应。我收到以下回复:

{
  "success": false,
  "error-codes": [
    "invalid-input-response",
    "invalid-input-secret"
  ]
}
Run Code Online (Sandbox Code Playgroud)

我查看了reCAPTCHA - error-codes: 'missing-input-response', 'missing-input-secret' 在验证用户的响应时(缺少 POST 的详细信息),并尽可能密切地遵循答案,但没有成功。

这是我的文件如下:

var request = require('request');

module.exports = {
  verifyCaptcha: function(req, res) {

    var secret = 'SECRET_KEY';
    var response = JSON.stringify(req.body.response);
    request({
        url: 'https://www.google.com/recaptcha/api/siteverify',
        method: 'POST',
        headers: { "Content-Type": "application/x-www-form-urlencoded" },
        body: `secret=${secret}&response=${response}`,
    }, function (err, response, body) {
        if (err) {
            res.status(500).send({
                error: "Could not verify captcha"
            });
        } else {
            res.status(200).send({
                message: body
            });
        } …
Run Code Online (Sandbox Code Playgroud)

javascript recaptcha node.js

6
推荐指数
2
解决办法
9505
查看次数

在 Node.js 中执行 MongoDB 查询

我正在尝试在 Node.js 中执行以下 MongoDB 命令:

db.events.group({
  key: {
    'timestamp.d': true
  },
  cond: {
    'event_name': 'search'
  },
  initial: {
    'count': 0,
    'empty': 0,
    'redos': 0
  },
  reduce: function(item, summaries) {
    summaries.count++;
    if (item.result_count == 0) {
      summaries.empty++;
    }
    if (item.original_query) {
      summaries.redos++;
    }
    var totalSuccesses = (summaries.count - summaries.redos - summaries.empty);
    summaries.percentNonFailures = (totalSuccesses / summaries.count) * 100
  }
})
Run Code Online (Sandbox Code Playgroud)

这对于 Mongo 命令来说非常有用,就像白天给我总结一样。当我在 Node.js 中尝试这个时:

db.collection('events', function(err, collection) {
  collection.group({
    "timestamp.d": true
  }, {
    "event_name": "search"
  }, {
    count: 0,
    empty: …
Run Code Online (Sandbox Code Playgroud)

mongodb node.js

5
推荐指数
1
解决办法
4274
查看次数