tengo un archivo json vacío. Quiero agregar datos json a mi archivo json cuando se hace clic en el botón. pero da error 405. como puedo hacer?
error:
POST net::ERR_ABORTED 405 (método no permitido)
código:
var data={ method:"POST", body:{ userId:1, title:"sample title", body:"sample body" }, headers:new Headers({ 'content-type':'application/json', 'dataType': 'json' }) } fetch("anaveri.json",data). then(res=>{ console.log(res); }). catch(error=>{ console.log(error); });El navegador no puede escribir datos directamente en el sistema de archivos del servidor.
Sería un horrible problema de seguridad si pudiera. ¡La página de inicio de Google se sobrescribiría con un poco de troleo diferente cada pocos segundos!
El navegador puede enviar una solicitud HTTP a una URL. Luego, el servidor necesita usar la programación del lado del servidor para procesar esa solicitud.
Debe elegir un lenguaje de programación que admita su servidor (o cambiar los servidores a uno que admita el idioma del lado del servidor que elija) y escribir un servicio web que tome los datos de la solicitud y los almacene.
Podría hacer que escriba directamente en un archivo JSON, pero eso corre el riesgo de tener problemas "divertidos" con escrituras simultáneas, por lo que es más típico almacenar los datos en una base de datos y hacer que otro servicio web genere el JSON a pedido.
Debería considerar agregar algún tipo de prueba (por ejemplo, autenticación de contraseña y validación de datos) para controlar quién puede insertar nuevos datos y qué tipo de datos pueden insertar para evitar el problema de vandalismo mencionado anteriormente.
Las secuencias de comandos del lado del cliente no pueden cambiar archivos en el servidor o el sistema de archivos local por razones de seguridad. Dependiendo de lo que intente lograr, debe hacer una de estas cosas:
FileSystem del navegador en lugar de la del cliente405 (Method Not Allowed) significa que el recurso que está consultando (en este caso, su archivo json) no implementa el método que está tratando de usar en él. Para agregar información a su archivo json, debe tener algún tipo de lógica de back-end que implemente una API RESTful, de modo que pueda emitir solicitudes usando JavaScript; no puede hacerlo solo con JavaScript.