基于shell脚本对aliyun npm仓库(https://packages.aliyun.com)登录认证

文章目录

基于shell脚本对阿里云npm仓库(https://packages.aliyun.com)登录认证

食用人群

由于一些安全的原因,某些企业可能会基于阿里云搭建的私有npm仓库,那么,在脱离阿里云体系部署代码的情况下,通过shell脚本进行自动化部署就会存在私有仓库登录认证问题,本文即给出"食用"说明。

食用方式

话不多说,直接上代码:

shell 复制代码
# 仓库地址
registry="https://packages.aliyun.com/xxx/npm/npm-registry/" #注意这里xxx要根据实际情况改成私有仓库信息
# 用户名
username="" #这里需输入
# 密码
password="" #这里需输入 

params='{"name": "'$username'", "password": "'$password'" }'

echo "登录认证参数:$params"

loginResult=$(curl -s \
  -H "Accept: application/json" \
  -H "Content-Type:application/json" \
  -X PUT --data "$params" \
  "$registry-/user/org.couchdb.user:$username"
)

tokenVal=$loginResult
if [[ $tokenVal == *token* ]]
then
# if [[ $tokenVal == *token* ]]; then
  tokenVal=${tokenVal#*token\":\"}
  tokenVal=${tokenVal/\"\}/} #不要怀疑,这里就是这么用的
else
  echo "login fail!"
  echo $loginResult
fi

authRegistryPath=${registry/https:\/\//}
npm set registry $registry
npm set //$authRegistryPath:_authToken=$tokenVal #这里即设置带有登录认证仓库地址,后续会从这个仓库下载各种包

echo "token:$tokenVal"
echo "npm仓库及认证地址://$authRegistryPath:_authToken=$tokenVal"

参考:npm/aliyun仓库自动登录脚本shell命令 jenkins 无法交互输入用户名和密码
****************************** 只要思想不滑坡,办法总比困难多******************************

相关推荐
子兮曰6 小时前
async/await高级模式:async迭代器、错误边界与并发控制
前端·javascript·github
恋猫de小郭6 小时前
2026 Flutter VS React Native ,同时在 AI 时代 VS Native 开发,你没见过的版本
android·前端·flutter
GIS之路8 小时前
ArcGIS Pro 中的 Notebooks 入门
前端
IT_陈寒10 小时前
React状态管理终极对决:Redux vs Context API谁更胜一筹?
前端·人工智能·后端
Kagol11 小时前
TinyVue 支持 Skills 啦!现在你可以让 AI 使用 TinyVue 组件搭建项目
前端·agent·ai编程
柳杉11 小时前
从零打造 AI 全球趋势监测大屏
前端·javascript·aigc
simple_lau11 小时前
Cursor配置MasterGo MCP:一键读取设计稿生成高还原度前端代码
前端·javascript·vue.js
睡不着先生11 小时前
如何设计一个真正可扩展的表单生成器?
前端·javascript·vue.js
天蓝色的鱼鱼11 小时前
模块化与组件化:90%的前端开发者都没搞懂的本质区别
前端·架构·代码规范
明君8799711 小时前
Flutter 如何给图片添加多行文字水印
前端·flutter