[英]Node.js RESTful API on Azure
我正在尝试在node.js中迈出第一步,我一直在关注本教程: https : //docs.microsoft.com/en-us/azure/app-service-api/app-service-api- nodejs-api-app当我在azure中输入npm install -g yo
到云shell时我收到此错误:
npm ERR! Linux 4.4.0-83-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "yo"
npm ERR! node v6.9.4
npm ERR! npm v3.10.10
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/local/lib/node_modules' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! Please include the following file with any support request:
npm ERR! /home/shiran_dror/app-service-api-node-contact-list/npm-debug.log
如何以root身份/管理员身份使用shell?
您应该在本地计算机上安装Swaggerize,而不是在Cloud Shell中安装。
在本地计算机上安装Swaggerize。 Swaggerize是一个从Swagger定义为REST API生成Node.js代码的工具。
完成本地开发后,使用git推送到App Service(文档中的“使用Git部署API”部分)。
在今天的Cloud Shell中,您被设置为没有sudo权限的普通用户 。 因此,您无法从Cloud Shell运行sudo cmds。 在您所关注的教程中,Cloud Shell帮助需要az
命令的部分创建Azure应用程序服务,因为Azure CLI 2.0在那里得到维护和更新。
安装Swaggerize的npm部分应该在您的本地计算机上,说明中包含此详细信息。
您的用户似乎没有在/usr/local/lib/node_modules
安装的权限。 尝试删除-g
选项以在本地安装。
在npm install
命令前面使用sudo
切换到root用户以获取此命令(如果您允许这样做)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.