¿Por qué npm dice 404 cuando curl puede 200
artifactory (2)
myscope:registry=https://myprivatedomain.com/artifactory/api/npm/npm-myregistry-release/
un registro como myscope:registry=https://myprivatedomain.com/artifactory/api/npm/npm-myregistry-release/
a mi archivo .npmrc
.
Cuando hago npm install @myscope/mypackage
dice 404 No encontrado. Cuando cat el registro de depuración tiene el error 7 http fetch GET 404 https://myprivatedomain.com/artifactory/api/npm/npm-myregistry-release/@myscope%2fmypackage 1463ms
que es extraño porque si hago curl https://myprivateregistry.com/@myscope%2fmypackage
Veo una respuesta. ¿Alguna idea de lo que pueda haber configurado mal?
Usar -i
en curl me da todas las cosas apropiadas que esperas, como 200:
HTTP/1.1 200 OK
Date: Fri, 20 Jul 2018 19:03:17 GMT
Content-Type: application/json
Transfer-Encoding: chunked
Connection: keep-alive
Server: Artifactory/5.10.3
X-Artifactory-Id: 3cfb3447e11ab4943a37f53d7a5dcd357274261d
X-Artifactory-Node-Id: art2
ETag: c3636860e64da7eda14f65ff25c1e8ad11266adc
Hice npm search @myscope
y no encontré nada. Luego actualicé .npmrc
para que solo fuera registry=https://myprivatedomain.com/artifactory/api/npm/npm-myregistry-release/
y ejecuté la búsqueda. Vi el paquete subir. A pesar de que la búsqueda funciona ahora, todavía dice 404 cuando voy a instalar.
Hice que mi compañero de trabajo usara la misma configuración de npm y funcionó para él. Cerré mis terminales y reinicié (en caso de que de alguna manera hubiera configurado algo mal usando el inicio de sesión de npm, como un control de seguridad) y aún tuviera el problema. Si hago npm logout
e intento la instalación, obtengo un 401. Luego npm login
y regresé al E404
También entré en mi .gitconfig
y comenté en su insteadOf
.
#[url "https://"]
# insteadOf = git://
Sinceramente, no estoy seguro de por qué está ahí, pero parecía que valía la pena hacer un comentario solo por esto.
De la documentación oficial de Artifactory , la URL correcta debe ser:
npm config set registry http://<ARTIFACTORY_SERVER_DOMAIN>:8081/artifactory/api/npm/npm-repo/
En su caso: myprivateregistry.com/api/npm/npm-repo
: verifique con su colega (que no tiene problemas) cuáles son sus referencias a .npmrc
.
Desde el OP, el artefacto en el extremo del registro fue defectuoso.
Una explicación para que no afectara al otro colega fue que el colega lo tenía en su caché local de npm.
Parece que hubo algún problema de configuración en el final del registro. Escribiendo esto como un marcador de posición. Con la esperanza de obtener el propietario del registro para escribir lo que hicieron para corregir esto. Muy extraño ya que no estaba impactando a todos.