Vietnam

    Nodejs.vn

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Popular
    • Tags
    • Groups
    • Search
    1. Home
    2. lamphanqt
    L
    • Profile
    • Following 0
    • Followers 0
    • Topics 6
    • Posts 12
    • Best 2
    • Controversial 0
    • Groups 0

    lamphanqt

    @lamphanqt

    Vui tánh
    Ham học hỏi
    :)

    2
    Reputation
    293
    Profile views
    12
    Posts
    0
    Followers
    0
    Following
    Joined Last Online
    Website vietteldng.net Location Viet Nam

    lamphanqt Unfollow Follow

    Best posts made by lamphanqt

    • RE: [Hỏi] Sử dụng nightmare và nodejs trên c9.io

      Há há.. OMG it DONE =))
      cài xong 2 lệnh trên là chạy được rồi MOD ạ. Mà do mình đang ở thư mục electron nên nó ko tìm thấy file server.js (tks MOD chỉ điểm 😃 ).
      Vậy tóm lại để cho các bạn sau có thể pass qua cái thằng quái đản này (nếu gặp case giống mình) mà vô tình đi lạc vào đây:
      Mình bắt đầu lại từ đầu nhé:

      npm init
      npm install nightmare --save
      sudo apt-get update
      sudo apt-get install xvfb
      xvfb-run --server-args="-screen 0 1024x768x24" node index.js

      Khi gặp lỗi bash: xvfb-run: command not found thì dùng lệnh

      sudo apt-get update

      sau đó cài xvfb bằng lệnh

      sudo apt-get install xvfb

      rồi chạy với cú pháp

      xvfb-run [xvfb args] node your-nightmare-script.js

      DONE ~ hehe

      posted in Node.JS
      L
      lamphanqt
    • RE: [Hỏi] Sử dụng nightmare và nodejs trên c9.io

      [Hơi nhiều chuyện] Bonus ngoài lề tí :))
      Trong lúc chờ đợi, mình lại tiếp tục search GG =)) với từ khoá lỗi + c9.io
      =)) bất ngờ là thằng GG nó đã index luôn trang nodejs.vn rồi. Nhanh khiếp thật =))

      P/s: à nhiều chuyện thế thôi, mình tiếp tục GG đây :((
      Ai gặp trường hợp lỗi như mình thì chỉ giáo mình với nhé.

      posted in Node.JS
      L
      lamphanqt

    Latest posts made by lamphanqt

    • Xin hỏi về dạng dữ liệu Date

      Xin chào các a chị em Nodejs
      Mình gặp 1 dạng dữ liệu trả về là string có giá trị như sau:

      time:"/Date(1512885600000)/";

      Nhưng không hiểu là Date(1512885600000) này là dạng thời gian gì.
      Mình thử các tool convert datetime nhưng chưa tìm ra được giá trị đúng 🙂
      Bạn nào biết dạng datetime này cho mình phương án parse nó ra với ạ 😃
      Xin cám ơn.

      posted in Hỏi Đáp
      L
      lamphanqt
    • RE: Lỗi Configuration property "token" is not defined khi dùng PM2

      Cám ơn Mod,
      Mình thử kiểm tra NODE_ENV thì báo undefined

      [email protected]:~$ node
      process.env.NODE_ENV
      undefined

      Vậy mình phải làm thế nào ?
      File index mình chạy nằm ở /home/rsa-key-20171007/app/index.js

      posted in Hỏi Đáp
      L
      lamphanqt
    • Lỗi Configuration property "token" is not defined khi dùng PM2

      Xin chào các bạn,
      Hiện tại mình đang dùng PM2 để quản lý Node app.
      Mình gặp 1 lỗi đó là khi dùng lệnh
      Pm2 start index
      Thì app khởi động lên xong gặp lỗi ngay.
      Xem log của PM2 thì thấy báo

      WARNING: NODE_APP_INSTANCE value of '0' did not match any instance config file names.
      WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
      WARNING: No configurations found in configuration directory:/home/rsa-key-20171007/config
      WARNING: To disable this warning set SUPPRESS_NO_CONFIG_WARNING in the environment.
      Error: Configuration property "token" is not defined
      at Config.get (/home/rsa-key-20171007/app/node_modules/config/lib/config.js:181:11)
      at Object.<anonymous> (/home/rsa-key-20171007/app/index.js:23:28)
      at Module._compile (module.js:570:32)
      at Object.Module._extensions..js (module.js:579:10)
      at Module.load (module.js:487:32)
      at tryModuleLoad (module.js:446:12)
      at Function.Module._load (module.js:438:3)
      at Object.<anonymous> (/usr/local/lib/node_modules/pm2/lib/ProcessContainerFork.js:70:21)
      at Module._compile (module.js:570:32)
      at Object.Module._extensions..js (module.js:579:10)
      at Module.load (module.js:487:32)
      at tryModuleLoad (module.js:446:12)
      at Function.Module._load (module.js:438:3)
      at Module.runMain (module.js:604:10)
      at run (bootstrap_node.js:383:7)
      at startup (bootstrap_node.js:149:9)

      Nội dung khai báo config trong index line23 như sau:

      const TOKEN = (process.env.APP_TOKEN) ? process.env.APP_TOKEN : config.get('token');

      Vấn đề ở đây là nếu gõ node index thì app vẫn chạy bình thường. Nhưng nếu khởi động app bằng PM2 thì lại gặp lỗi.
      Bạn nào đã gặp và có hướng nào xử lý giúp mình với ạ.
      Cám ơn mọi người.

      posted in Hỏi Đáp
      L
      lamphanqt
    • Phương pháp tốt nhất để gửi Soap request lên webservice

      Chào các bro,
      Có bạn nào dùng Node để gửi request XML lên webservice dạng giao thức soap chưa ạ ?
      Mình tìm hiểu thì thấy có mấy thư viện node hỗ trợ:

      • node-soap
      • strong-soap (rewrite of node-soap)
      • easysoap

      Hình như module request của node cũng hỗ trợ thì phải.
      Tuy nhiên mình không rõ là nên dùng thư viện nào thì tốt nhất.
      Và việc require nhiều thư viện trong code có gây ảnh hưởng lớn đến hiệu suất chương trình nhiều không (ví dụ module request thực hiện được các chức năng mình cần, nhưng vẫn dùng thêm 1 module khác vì nó tiện lợi hơn chẳng hạn)

      Nhờ các bạn góp ý giúp, Xin cám ơn 😃

      posted in Hỏi Đáp
      L
      lamphanqt
    • [Hỏi] về hàm wait() trong nightmare

      Xin chào các bạn, có bạn nào dùng nightmare để bóc tách dữ liệu website rồi cho mình hỏi vấn đề này ạ:

      1. [CÂU HỎI CHÍNH] Với 1 trang web dùng jquery để đổ dữ liệu, làm thế nào để xác định thời điểm toàn bộ dữ liệu được trả về đầy đủ trên trang, nếu lượng dữ liệu mỗi lần trả về(vd số lượng kết quả trả về) không cố định ?
      2. Trong nightmare có hàm wait(selector) để đợi, tuy nhiên trường hợp của mình, số lượng kết quả không cố định mỗi lần tìm kiếm nên không thể định trước 1 id nào chính xác (id có đặc điểm là tăng dần từ 1 -> hết)
      3. Hiện tại mình đang dùng wait(ms), tuy nhiên nhược điểm là dữ liệu lấy về lúc thì đầy đủ (nếu sau ms giây trang load xong) lúc thì thiếu (sau ms giây mà vẫn chưa load hết) không tin tưởng được cái hàm hên xui này =))
      4. Sau khi wait(ms) thì mình dùng .evaluate() để thực hiện các lệnh lấy dữ liệu. Khi search trên mạng thì thấy nó bảo evaluate() đợi đến khi trang load xong ('did-finish-load') mới thực hiện lệnh, tuy nhiên khi mình chạy thì ko thấy như vậy,

      Xin nhờ các cao thủ giải thích dùm và hướng dẫn thêm ạ. 😃

      posted in Node.JS
      L
      lamphanqt
    • RE: [Hỏi] Vấn đề về đường dẫn khi deploy app trên Heroku

      Cám ơn các bác nhiệt tình chỉ bảo 😃
      Em fix được rồi 😃
      do lỗi đường dẫn static như các bác đã nói 😃

      posted in Node.JS
      L
      lamphanqt
    • RE: [Hỏi] Vấn đề về đường dẫn khi deploy app trên Heroku

      Cám ơn bác @hidemanvn, bác @Khoa-Lê-Duy và bác @Vũ.
      Bác @hidemanvn và bác @Vũ : cấu trúc thư mục của em là :
      index.js
      package.json
      node_modules
      public
      => Chạy code theo hướng dẫn của 2 bác vẫn chưa lây được ảnh @@. Vẫn lỗi Cannot GET....
      Thư mục em lưu khi chạy screeshot của nightmare = 'public/fileanh1234.png' và gọi link = appname.herokuapp.com/fileanh1234.png
      Vậy đúng chưa bác? sao nó vẫn lỗi như cũ ạ ?

      bác @Khoa-Lê-Duy : bác bảo tạo thư mục rồi push lên, nhưng lần sau bị mất file khi commit là sao em ko hiểu ? Mất là mất file gì vậy bác ?

      posted in Node.JS
      L
      lamphanqt
    • [Hỏi] Vấn đề về đường dẫn khi deploy app trên Heroku

      Xin chào các cao thủ trên nodejs.vn 😃
      Vẫn là em trên con đường khám phá nodejs với rất nhiều câu hỏi 😃
      Từ bữa bác MOD @Vũ chỉ cho vài chiêu khi dùng nightmare trên c9.io . Nay em đã deploy thành công lên Heroku, tuy nhiên còn 1 vấn đề nhờ bác nào đã gặp rồi chia sẻ hướng dẫn giúp em.

      Chuyện là app của em nó làm 1 việc đơn giản là dùng nightmare chụp 1 bức ảnh của website, sau đó show ra cái đường dẫn dạng appname.herokuapp.com/public/fileanh1234.png cho người ta bấm vào. Vậy thôi.

      App này đã chạy được trên c9.io (vì nó cho quản lý thư mục nên em còn thấy đường - chứ bên heroku em ko biêt làm sao để thấy cấu trúc thư mục khi đưa lên). Khi đưa qua heroku thì tạo file ảnh thành công, tuy nhiên click vào link thì báo lỗi là :

      Cannot GET /public/filname1234.png

      Em nghĩ đây là vấn đề đường dẫn dạng ./ hoặc / gì đấy nên có thay đổi đường dẫn khi tạo file và get file.

      .screenshot("public/tenfile_"+random+".png")
      hoặc
      .screenshot("./public/tenfile_"+random+".png")
      var link = "https://appname.herokuapp.com/public/tenfile_"+random+".png"

      Em cũng đã khai báo

      app.use(express.static('public'));

      Thử mấy cách cũng ko show được file ảnh.
      Xin các cao thủ chỉ giáo ạ.
      Cám ơn mọi người !

      posted in Node.JS
      L
      lamphanqt
    • RE: [Hỏi] Sử dụng nightmare và nodejs trên c9.io

      Há há.. OMG it DONE =))
      cài xong 2 lệnh trên là chạy được rồi MOD ạ. Mà do mình đang ở thư mục electron nên nó ko tìm thấy file server.js (tks MOD chỉ điểm 😃 ).
      Vậy tóm lại để cho các bạn sau có thể pass qua cái thằng quái đản này (nếu gặp case giống mình) mà vô tình đi lạc vào đây:
      Mình bắt đầu lại từ đầu nhé:

      npm init
      npm install nightmare --save
      sudo apt-get update
      sudo apt-get install xvfb
      xvfb-run --server-args="-screen 0 1024x768x24" node index.js

      Khi gặp lỗi bash: xvfb-run: command not found thì dùng lệnh

      sudo apt-get update

      sau đó cài xvfb bằng lệnh

      sudo apt-get install xvfb

      rồi chạy với cú pháp

      xvfb-run [xvfb args] node your-nightmare-script.js

      DONE ~ hehe

      posted in Node.JS
      L
      lamphanqt
    • RE: [Hỏi] Sử dụng nightmare và nodejs trên c9.io

      Tks mod. Mình thử lệnh: xvfb-run --server-args="-screen 0 1024x768x24" node server.js hello
      thì lỗi: bash: xvfb-run: command not found
      Tiếp tục GG lỗi trên thì ra https://stackoverflow.com/questions/21395640/xvfb-not-found-on-your-system
      => chạy lệnh: sudo apt-get install xvfb
      => ra lỗi: E: Unable to locate package xvfb
      Tiếp tục GG lỗi -> ra (https://askubuntu.com/questions/378558/unable-to-locate-package-while-trying-to-install-packages-with-apt)
      Chạy 2 lệnh
      => sudo apt-get update
      => sudo apt-get install xvfb
      Chạy thử lệnh: xvfb-run --server-args="-screen 0 1024x768x24" node server.js hello
      Gặp lỗi:
      module.js:327
      throw err;
      ^

      Error: Cannot find module '/home/ubuntu/workspace/electron/server.js'
      at Function.Module._resolveFilename (module.js:325:15)
      at Function.Module._load (module.js:276:25)
      at Function.Module.runMain (module.js:441:10)
      at startup (node.js:139:18)
      at node.js:990:3
      => Bí =))
      MOD có thể hướng dẫn thêm cho mình không 🙂

      @Vũ said in [Hỏi] Sử dụng nightmare và nodejs trên c9.io:

      Mình search qua trên Github, có một hướng dẫn như này bạn thử xem:

      Is it running? Generally you want to start Xvfb as a daemon process. Alternatively, you can xvfb-run [xvfb args] node your-nightmare-script.js

      Ref: https://github.com/segmentio/nightmare/issues/602#issuecomment-214881507

      posted in Node.JS
      L
      lamphanqt