2017-08-02 3 views
1

Ich habe versucht, das hier beschriebene URL-Modul für Knoten js zu verwenden: https://nodejs.org/api/url.html#url_url, aber ich kann nicht scheinen, die einfachen Beispiele zu funktionieren. Ich möchte in der Lage sein, eine URL zu erstellen, aber mit dem folgenden Code,URL ist keine Funktion node.js

const URL = require('url'); 
const apiUrl = new URL('myapi.com/'); 
apiUrl.searchParams.set('tickers', tickers); 
console.log(apiUrl.href); 

Ich laufe in die Fehler, dass URL nicht eine Funktion ist. Ich habe schon versucht, diese mit der anderen Art und Weise die Website zu URL Initialisierung schlägt vor, als

const { URL } = require('url'); 

Aber das verursacht Syntaxfehler auf der ersten offene Klammer. Wie kann ich das URL-Modul verwenden, um URLs tatsächlich zu manipulieren?

Edit:

Im Lichte MinusFour Vorschlag, ich bin jetzt bis zu hier:

const URL = require('url').Url; 
const apiUrl = new URL('myapi.com/'); 
console.log(apiUrl); 
apiUrl.search = 'tickers=[\'msft\']'; 
console.log(apiUrl.href); 

Diese und führen nicht kompilieren, ohne einen Fehler zu werfen, aber logs

Url { 
    protocol: null, 
    slashes: null, 
    auth: null, 
    host: null, 
    port: null, 
    hostname: null, 
    hash: null, 
    search: null, 
    query: null, 
    pathname: null, 
    path: null, 
    href: null } 
null 

Was ich nicht wirklich erhofft hatte.

+0

"Aber das verursacht Syntaxfehler auf der ersten offenen Klammer." Das liegt daran, dass Sie eine alte Version von node.js verwenden. Siehe https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment – undefined

Antwort

2

Es ist eine Eigenschaft des Moduls:

const URL = require('url').URL; 
0

Wenn Sie Knoten 6.x verwenden, dann haben Sie URl.pasre stattdessen zu verwenden.