Cómo preformar un mensaje Reddit con okhttp
Estoy intentando utilizar la API de Reddit para guardar una publicación. Sé que estoy formateando la solicitud incorrecta, pero no puedo encontrar ninguna documentación sobre cómo hacerlo correctamente. Si alguien me puede llevar en la dirección correcta, o ayudarme a formatear la solicitud correctamente. Esto es lo que tengo hasta ahora.
public void save(View v) { OkHttpClient client = new OkHttpClient(); String authString = MainActivity.CLIENT_ID + ":"; String encodedAuthString = Base64.encodeToString(authString.getBytes(), Base64.NO_WRAP); System.out.println("myaccesstoken is: "+ myaccesstoken); System.out.println("the image id is: "+ myimageid); Request request = new Request.Builder() .addHeader("User-Agent", "Sample App") .addHeader("Authorization", "Bearer " + myaccesstoken) .addHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8") .url("https://oauth.reddit.com/api/save.json?") .post(RequestBody.create(MediaType.parse("application/x-www-form-urlencoded"), ""+ myimageid + "1")) .build(); client.newCall(request); }
Soy muy muy nuevo a usar APIs y no estoy seguro exactamente lo que estoy buscando. Aquí está el enlace a la API reddit para guardar
- Cómo enviar caracteres unicode en un HttpPost en Android
- Interceptar solicitudes POST en un WebView
- Cómo subir varios archivos con AsyncHttpClient Android
- phonegap android ajax solicita trabajo para GET pero no POST
- Enviar solicitud de publicación con params utilizando Retrofit
Https://www.reddit.com/dev/api/oauth#POST_api_save
¡¡¡Gracias de antemano por cualquier ayuda!!!
- Datos de formulario multipart de Android POST
- Envío de una solicitud de publicación a localhost
- Configuración del tipo de contenido Json para el cliente Rest
- Servicio llamado de Android a C # no funciona
- problema POST android JSONObject a PHP
- Android- Java.io.Exception: contenido Error de longitud Esperado x cantidad de memeory cantidad conseguida y
- Error al ejecutar el mensaje Http en panal
- Compartir enlace en Facebook a través de la aplicación android con análisis automático
De acuerdo con la documentación, parece que está formateando al cuerpo de POST incorrectamente. Necesitas hacer que tu cuerpo parezca:
{ "category" : "your category" //This could something like "science" "id" : "fullname of thing" }
También parece que le falta la cabecera de X-Modhash
.
Documentos completos
Modhash docs
También tendrá que incluir un encabezado X-Modhash
. La documentación lo explica aquí.
¿Has intentado mirar el wiki okhttp?
https://github.com/square/okhttp/wiki/Recipes
Parece que estás en el camino correcto, pero probablemente necesitas llamar a ejecutar para obtener la respuesta.
Response response = client.newCall(request).execute();
También asegúrese de no hacerlo en el hilo principal.
Personalmente, me gusta usar retroalimentación en lugar de usar okhttp directamente.
- Android Studio Preview 3.0 – Error en la instalación de la aplicación al ejecutar una aplicación instantánea
- Cambiar páginas en ViewPager no es suave