2014-05-12 2 views
29

Fondamentalmente, io sto usando javascript per raschiare i dati da Google Play Store utilizzando:Javascript richiedono() funzione di dare ReferenceError: richiede non è definito

1-Request

2-Cheerios

3- querystring

ho usato Market di Google API da Github che utilizza richiedono i seguenti:

var request = require('request'); 
var cheerio = require('cheerio'); 
var qs  = require('querystring'); 

Ma sto ottenendo il seguente

ReferenceError: richiedono non è definito ...

Quindi, non ho richiedono in JavaScript, che è sia una novità per me, o questo è qualcosa di straordinario.

+4

Sì, 'require' non è definito nei browser. Hai mescolato le esercitazioni NodeJS con le esercitazioni del browser. – elclanrs

+1

Fornire un collegamento alla libreria che si sta utilizzando. – Quentin

risposta

36

RequireJS is a JavaScript file and module loader. It is optimized for in-browser use, but it can be used in other JavaScript environments, like Rhino and Node. Using a modular script loader like RequireJS will improve the speed and quality of your code.

IE 6+ .......... compatible ✔ 
Firefox 2+ ..... compatible ✔ 
Safari 3.2+ .... compatible ✔ 
Chrome 3+ ...... compatible ✔ 
Opera 10+ ...... compatible ✔ 

http://requirejs.org/docs/download.html

Aggiungi questo al vostro progetto: http://requirejs.org/docs/release/2.2.0/minified/require.js

e dare un'occhiata a questo http://requirejs.org/docs/api.html

6

require fa parte della Asynchronous Module Definition (AMD) API.

Un'implementazione del browser può essere trovata tramite require.js e il supporto nativo può essere trovato in node.js.

La documentazione per la libreria che si sta utilizzando dovrebbe dirvi che cosa è necessario per usarlo, ho il sospetto che è destinato a funzionare in Node.js e non nei browser.

+0

@blogger - Non c'è PHP nella tua domanda, è tutto JavaScript. – Quentin

+0

ben dispiaciuto per quello, pubblicato sulla domanda sbagliata, ho cancellato che il link sorgente è: [link] (https://github.com/afuchs/GooglePlayStoreScraper) e basato su javascript, non è ancora in grado di risolvere il problema usando require .js –

+0

@blogger - Questo modulo ha tutti i tratti distintivi di essere progettato per funzionare con Node.JS. Probabilmente non funzionerà in alcun browser. – Quentin

10

Per impostazione predefinita, require() non è una funzione valida in javascript lato client. Ti consiglio di esaminare require.js poiché questo estende il lato client per fornirti quella funzione.