
Simplemente no puedo entender por qué todos mis intentos fallaron. Intento usar curl para enviar una solicitud POST con json a una URL específica cuando una ruta a JSON se define como variable:
#!/bin/sh
JSON_TMP=/home/aaa/jsons/make_6h_from_1h.json
curl -X POST -H "Content-Type: application/json" --data-binary "@${JSON_TMP}" http://some-url
¡Lo que sea que intenté (poner "@${JSON_TMP}"
o "@$JSON_TMP"
o @"${JSON_TMP}"
cualquier otra cosa) simplemente no parece funcionar!
Lo que es más molesto es que no hay ningún mensaje de error o algo así: simplemente ejecuto el comando y recibo el mensaje nuevamente. En el otro extremo puedo ver que no se envió ningún json.
Respuesta1
Las siguientes obras:
body_arg=(--data-binary @${filePath})
curl -X POST -H "Content-Type: application/json" "${body_arg[@]}" http://some-url
Respuesta2
curl -X POST -i -H "Accept: application/json" -H "Content-Type: application/json" --data-binary --data-binary @${JSON_TMP} http://some-url
Intente eliminar las comillas dobles en @${JSON_TMP}