¿Cómo se pueden configurar encabezados personalizados para una solicitud de Volley? Por el momento, existe una forma de establecer el contenido del cuerpo de una solicitud POST. Tengo una solicitud GET simple, pero necesito pasar los encabezados personalizados junto con. No veo cómo la clase JsonRequest lo admite. ¿Es posible en absoluto?
android
android-volley
bianca
fuente
fuente
Respuestas:
Parece que anula
public Map<String, String> getHeaders()
, definido enRequest
, para devolver los encabezados HTTP deseados.fuente
GsonRequest
anula el métodogetHeaders()
para devolver un mapa con los parámetros de encabezado que pasa en el constructor.La respuesta aceptada con getParams () es para configurar los datos del cuerpo POST, pero la pregunta en el título preguntaba cómo configurar los encabezados HTTP como User-Agent. Como dijo CommonsWare, anula getHeaders (). Aquí hay un código de muestra que establece el User-Agent en 'Nintendo Gameboy' y Accept-Language en 'fr':
fuente
Si lo que necesita es publicar datos en lugar de agregar la información en la url.
Si lo que quiere hacer es editar los encabezados en la solicitud, esto es lo que quiere hacer:
fuente
getHeaders
respuestas.Puedes ver esta solución. Muestra cómo obtener / configurar cookies, pero las cookies son solo uno de los encabezados en una solicitud / respuesta. Tienes que anular una de las clases de solicitud de Volley * y establecer los encabezados requeridos en
getHeaders()
Aquí está la fuente vinculada:
}
Y la clase MyApp:
fuente
En Kotlin,
Tienes que anular el método getHeaders () como:
fuente
Buscando una solución a este problema también. vea algo aquí: http://developer.android.com/training/volley/request.html
¿Es una buena idea usar ImageRequest directamente en lugar de ImageLoader? Parece que ImageLoader lo usa internamente de todos modos. ¿Falta algo importante además del soporte de caché de ImageLoader?
fuente
prueba esto
fuente
Puede crear una clase Request personalizada que amplíe StringRequest y anule el método getHeaders () dentro de ella de esta manera:
fuente
fuente
Además, me gustaría compartir algo que encontré con respecto a
Content-Type
: Además deTuve que agregar:
No me preguntes por qué, solo pensé que podría ayudar a algunos otros que no pueden hacer bien el
Content-Type
set.fuente
Aquí se configuran los encabezados de la muestra de github:
fuente
prueba esto
fuente
Ese es mi código, no olvides = objeto: si no pones no funciona
fuente