2014-04-17 10 views
6

में डीबग रिमोट पोर्ट को अक्षम कैसे करें I exe फ़ाइल में पैक किए गए मेरे नोड-वेबकिट डेस्कटॉप एप्लिकेशन के कोड को सुरक्षित नहीं करना है। समस्या फ़ाइल पर सीधे नहीं है लेकिन रिमोट डीबगिंग के लिए समर्पित पोर्ट के साथ है।नोड-वेबकिट डेस्कटॉप ऐप

शायद मुझे कुछ समझ में नहीं आया है, लेकिन विंडोज़ पर, अगर मैं "netstat -a -o" कमांड निष्पादित करता हूं, तो मुझे एप्लिकेशन से जुड़ा एक खुला बंदरगाह दिखाई देता है और यदि मैं अपने पोर्ट पर यह पोर्ट खोलता हूं, तो मेरे पास है "इंस्पेक्टिव वेबकंट्स" वाला एक पृष्ठ और वेबकिट एप्लिकेशन का एक लिंक।

इस डीबग विंडो के साथ, ऐप के सभी स्रोतों तक पहुंच बनाना संभव है और मुझे नहीं पता कि इस सुविधा को कैसे अक्षम किया जाए।

+0

मेरा मानना ​​है कि यह अभी भी इस मुद्दे को खोला जाता है करने के लिए नाम बदल गया है, यहाँ देखो https://github.com/nwjs/nw.js/issues/3620 –

उत्तर

1

अभी के लिए, मुझे लगता है कि nw.js. में दूरस्थ डिबगिंग को अक्षम करने का कोई वास्तविक तरीका नहीं है।

फिर भी, wiki के अनुसार, दूरस्थ डिबगिंग केवल कमांड लाइन स्विच के माध्यम से निष्पादित की जाती है। इसलिए आप क्रोमियम कमांड लाइन स्विच (या केवल --remote-debugging-port) को अवरुद्ध कर सकते हैं ताकि उपयोगकर्ता द्वारा मनमाने ढंग से रिमोट डीबगिंग को रोका जा सके जब तक nw.js दूरस्थ डीबगिंग की कार्यक्षमता को अक्षम करने का समर्थन नहीं करता है।

उदाहरण के लिए:

const gui = require('nw.gui'); 
const app = gui.App; 

for (let element of app.fullArgv) { 
    // app.argv has only user's switches except for the chromium args 
    if (app.argv.indexOf(element) < 0) { 
     app.quit(1); // invalid args! 
    } 
} 

हालांकि, मैं कर रहा हूँ नहीं काफी यकीन है कि इसके बाद के संस्करण कोड क्योंकि nw.js क्रोमियम आंतरिक रूप से उपयोग कर रहा है, आपके आवेदन कोड की रक्षा कर सकता है। इसलिए, प्रारंभ कोड पर अस्थायी फ़ोल्डर में एप्लिकेशन कोड निकाला जाएगा। जबकि उपर्युक्त समाधान वास्तव में आपके nw.js एप्लिकेशन की रक्षा नहीं करता है। अधिक विवरण देखें: https://github.com/nwjs/nw.js/issues/269

नोट:node-webkitnw.js

संबंधित मुद्दे