Closed dmk12 closed 9 years ago
The offending line is:
var Endpoint = require(endpointPath);
I think it complains about not stating our dependency explicitly (as a string), but rather as a variable that needs to be evaluated first (an expression).
From architectural perspective, this is beneficial to keep the codebase flexible and will likely not be modified to avoid the warning you are getting. I think you will need to figure a way how to make your Grunt task ignore this warning or otherwise make it work...
Thanks @Alaneor. One of the errors I'm getting, any thoughts on that? It seems to be missing the fs
module, which seems to be a native nodeJS module and should be available.
ERROR in ./~/googleapis/~/request/~/hawk/~/hoek/lib/index.js
Module not found: Error: Cannot resolve module 'fs' in /Users/dev/wwb-web-app/node_modules/googleapis/node_modules/request/node_modules/hawk/node_modules/hoek/lib
@ ./~/googleapis/~/request/~/hawk/~/hoek/lib/index.js 3:9-22
Can't tell without knowing what Grunt plugin is causing it... But I have a terrible suspicion it's Browserify.
I cannot imagine how you could possibly package the fs
module for browser.
@dmk12 Any chance you found a solution?
@FriesFlorian No, sorry. I attributed it to the fact that the npm script is alpha, so things just don't work... :/ Ended up adding a link to googleapi to my index.html the old fashioned way.
hi, It seems that this error is still present. Does someone found a workaround in order to googleapi working with node ?
I'd like to implement some test but I block on that issue for now ...
I'm not exactly in the same case as I'm using babel.
My team and I are using webpack (which is also using babel) as part of a combined setup of React+Meteor, and are also getting this error. Kind of a bummer, this is the only package which is throwing this sort of error on us. We're getting both the the request of a dependency is an expression
error and the Cannot resolve module 'fs'
one. This is the read-out of errors:
Other "missing" modules include net
and tls
. Interestingly, those modules are missing in a number of other dependencies which aren't the google-api-nodejs-client library. The errors disappear when I don't have google = request('googleapis')
in my files, though.
@dmk12 , did loading googleapi from a script tag ever cause any issues? Are you able to perform any operations from the server using the APIs? We want our server-side code to interact with them, but this error is stopping us dead in our tracks.
EDIT: @Alaneor , is this error likely to stay in? Many node.js users use webpack, we can't be the only ones running into this. Our specific use-case is running server-side node.js methods which push updates to Google APIs based on database changes, so including the script tag on a client page won't do us much good.
@john-osullivan No, I had no issues using a script tag whatsoever, our server API (Django/Python) is interacting with Google API just fine (we're mostly using the GApi functionality for registering/logging in users).
But we have the frontend React/Webpack app as a mediator for this interaction, so backend doesn't have to know anything about GApi's existence. If you need backend node.js to talk to it directly then a script tag is no good, as you said.
Any update on this error? Still persisting over here in my Electron app with web pack :/
Just noting that I also encountered this issue. Ended up using a script tag instead.
google-api-nodejs-client is not meant to be used in a browser—it won't work. googleapis
(google-api-nodejs-client) will work in Node.js. Excluding googleapis
from any server-side bundle (just let Node's module system load it for you) is the best option.
To access Google APIs from a browser, please use the Google API Client Library for JavaScript (gapi
).
+1 @jmdobry case closed.
by the way, in case of fs
you can ignore it by add this codes (though not related with this issue)
node: {
console: 'empty',
fs: 'empty',
net: 'empty',
tls: 'empty'
}
I'm using https://www.npmjs.com/package/googleapis in a ReactJS Webpack app.
npm install googleapis --save
installed it ok, added"googleapis": "^2.0.2"
to my package.json, but when I rungrunt build
I get the following warnings (followed by lots of errors which I'll post upon request, as it is a lot of text):Code that requires googleapis in my React component:
Note: Any other code from the component can be provided on request, but I don't believe it's relevant to this issue.
My
package.json
dependencies:npm version 2.5.1
node version v0.12.1
Thanks in advance for any help!