"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Por qué mis variables AngularJS $ http.post () están indefinidas en mi script PHP?

¿Por qué mis variables AngularJS $ http.post () están indefinidas en mi script PHP?

Publicado el 2025-03-24
Navegar:379

Why are my AngularJS $http.post() variables undefined in my PHP script?

angularjs: http post variables indefinidas con php

cuando envíe un formulario angularjs usando $ http.post () , las variables recibidas por el script de PHP pueden aparecer como se adefinen, a pesar de recibir un 200 ok Respuesta.

causa

por defecto, AngularJS establece el encabezado content-type a la aplicación/json para las solicitudes de publicación HTTP. Sin embargo, si se envía una carga útil codificada en forma en lugar de datos JSON, PHP no complementará la matriz $ _post como se esperaba.

soluciones

hay dos soluciones principales:

  1. usa la JSON por defecto Json. Encabezado:

    mantenga el encabezado de aplicación de contenido predeterminado Datos:
    • Establezca el encabezado de contenido-type en aplicaciones/x-www-form-urlencoded.
    forman manualmente una cadena de consulta como correo electró[email protected]&password=secret y envíelo como la carga útil de datos. EncodeReRiCoMponent ().
  2. Ejemplo modificado php

      para la segunda solución:
    • $ query_string = file_get_contents ("php :// input"); parse_str ($ query_string, $ data); $ correo electrónico = $ data ['correo electrónico']; $ contraseña = $ data ['contraseña'];
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3