Ich versuche, meine Bilder mit ihrer REST-API in Cloudinary hochzuladen. Die Cloudinary-Bibliothek von CN1 funktionierte sehr gut für mich, aber ich möchte einige Dinge wie FailSilently steuern und AddQueue und AddToQueueAndWait hinzufügen können.Upload in Cloudinary mit REST API in CN1
Dies ist mein Code, wo ich ein Foto mit der Kamera nehmen und ich Cloudinary dann laden, aber es scheint nicht zu funktionieren:
@Override
protected void onMain_ButtonSubirAPIAction(Component c, ActionEvent event) {
String picture = Capture.capturePhoto(width, -1);
if(picture!=null){
String cloudinaryURL = "https://api.cloudinary.com/v1_1/"+CLOUDNAME+"/image/upload";
MultipartRequest request = new MultipartRequest() {
protected void readResponse(InputStream input) throws IOException {
JSONParser jp = new JSONParser();
Map <String, Object> result = jp.parseJSON(new InputStreamReader(input, "UTF-8"));
labelX.setText((String)result.get("url"));
}
};
request.setPost(true);
request.setHttpMethod("POST");
String encoded = Base64.encodeNoNewline((APIKEY + ":" + APISECRET).getBytes());
request.addRequestHeader("Authorization", "Basic " + encoded);
request.setUrl(cloudinaryURL);
try {
request.addData("file", picture, "image/jpeg");
request.addArgument("public_id", "name1");
NetworkManager.getInstance().addToQueue(request);
} catch(Exception err) {
}
}
}
I Parameter angegeben zu ändern versucht haben, ihre API-Dokumentation Seite: http://cloudinary.com/documentation/admin_api#usage_examples
Dank
EDIT: Hier ist die Syntax:
Hallo Shai. Ich habe gerade Ihre Zeilen hinzugefügt, aber ich bekomme immer noch eine "400 BAD REQUEST" Nachricht. Glauben Sie, dass die Methoden addData() und addArgument() korrekt verwendet werden? – Felipe
Sie haben den @ Teil richtig entfernt? Der Link, den Sie angegeben haben, ist nicht für den Upload-API-Bereich gedacht, aber ich denke, die URL sollte den Image-Namen enthalten, obwohl das ein wenig unklar ist. –
Ja, ich habe das @ entfernt. Bitte sehen Sie den Code. Ich habe es gerade aktualisiert. Ich habe auch einen Screenshot der Syntax (URL und Parameter) hinzugefügt. Ich gehe davon aus, dass ich die "public_id" (Name des hochgeladenen Bildes) mit der Methode addArgument() und den Pfad mit addData() hinzufügen muss – Felipe