|
You last visited: Today at 11:15
Advertisement
[Java] Bild hochladen, Direkt-Link zurück
Discussion on [Java] Bild hochladen, Direkt-Link zurück within the Java forum part of the Coders Den category.
02/01/2014, 17:05
|
#1
|
elite*gold: 7
Join Date: May 2009
Posts: 6,910
Received Thanks: 4,497
|
[Java] Bild hochladen, Direkt-Link zurück
Hey,
möchte ein Programm schreiben in dem es möglich ist eine Datei (Bild) an einen Server zu schicken und dann den Link dazu zurück bekommen.
Kennt jemand eine relativ einfache Methode wie ich so etwas realisieren könnte, bzw gibt es einen Hoster wo man Bilder mithilfe einer Java API hochladen kann?
Das ganze sollte ohne Anmeldung funktionieren! Quasi will ich den Vorgang beim Bild hochladen auf epvpimg.com (wenn das hier gehen würde wäre das noch besser) mit einem Programm machen.
|
|
|
02/01/2014, 23:56
|
#2
|
elite*gold: 0
Join Date: Mar 2013
Posts: 3,184
Received Thanks: 1,317
|
Ich glaube das ist am einfachsten für dich:
|
|
|
02/02/2014, 00:22
|
#3
|
elite*gold: 7
Join Date: May 2009
Posts: 6,910
Received Thanks: 4,497
|
Wenn ichs richtig verstanden hab braucht da jeder Benutzer aber einen Account und kann das dann in seinen Account laden oder?
Eigentlich hab ich so eine API bereits für die Dropbox und das funktioniert einwandfrei bloß mein Problem ist,dass man bei Dropbox für freigegebene Bilder entweder bloß einen temporären Direktlink erstellen kann oder einen Link der für immer hält aber leider kein direktlink ist und somit kann man das Bild nicht auf elitepvpers oder sonst wo einbinden.
Falls sich jemand mit der dropbox core API auskennt und es da doch ne Möglichkeit gibt bitte melden
|
|
|
02/02/2014, 00:53
|
#4
|
elite*gold: 0
Join Date: Mar 2013
Posts: 3,184
Received Thanks: 1,317
|
Quote:
Originally Posted by Chicken17
Wenn ichs richtig verstanden hab braucht da jeder Benutzer aber einen Account und kann das dann in seinen Account laden oder?
|
Nein, ich glaube nicht. Jeder Client muss lediglich einen Token beantragen.
Quote:
Originally Posted by Chicken17
Eigentlich hab ich so eine API bereits für die Dropbox und das funktioniert einwandfrei bloß mein Problem ist,dass man bei Dropbox für freigegebene Bilder entweder bloß einen temporären Direktlink erstellen kann oder einen Link der für immer hält aber leider kein direktlink ist und somit kann man das Bild nicht auf elitepvpers oder sonst wo einbinden.
|
Wie wäre es, wenn du anstatt die Bilder freizugeben, diese in den "Public" Ordner legst ?
|
|
|
02/02/2014, 01:34
|
#5
|
elite*gold: 7
Join Date: May 2009
Posts: 6,910
Received Thanks: 4,497
|
Quote:
Originally Posted by Zunft
Nein, ich glaube nicht. Jeder Client muss lediglich einen Token beantragen.
Wie wäre es, wenn du anstatt die Bilder freizugeben, diese in den "Public" Ordner legst ?
|
Achso,schaue mir das morgen mal an Ist die API auch für Java, weil ich habe so auf die schnelle nix dazu gefunden?
Die App lädt die Bilder automatisch in einen Order der den Namen der App hat, ist von Dropbox und der API her so
|
|
|
02/02/2014, 11:09
|
#6
|
elite*gold: 34
Join Date: Apr 2011
Posts: 1,475
Received Thanks: 1,227
|
Ich hab zwar sowas noch nie gemacht bzw. gebraucht (dementsprechend kenn ich mich nicht wirkllich da aus :P), sollte aber über die POST-Methodik funktionieren.
Hab da ein Beispiel im Netz gefunden:
|
|
|
02/14/2014, 17:19
|
#7
|
elite*gold: 7
Join Date: May 2009
Posts: 6,910
Received Thanks: 4,497
|
Suche immernoch
Das bei imgur könnte so etwas sein! Jedoch finde ich da nirgends ein Java Beispiel
|
|
|
02/14/2014, 17:58
|
#8
|
elite*gold: 0
Join Date: Mar 2013
Posts: 3,184
Received Thanks: 1,317
|
Code:
public void post(String path) {
List<NameValuePair> postContent = new ArrayList<NameValuePair>(2);
postContent.add(new BasicNameValuePair("key", DEV_KEY));
postContent.add(new BasicNameValuePair("image", path));
String url = "http://imgur.com/api/upload.xml";
HttpClient httpClient = new DefaultHttpClient();
HttpContext localContext = new BasicHttpContext();
HttpPost httpPost = new HttpPost(url);
try {
MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
for(int index=0; index < postContent.size(); index++) {
if(postContent.get(index).getName().equalsIgnoreCase("image")) {
// If the key equals to "image", we use FileBody to transfer the data
entity.addPart(postContent.get(index).getName(), new FileBody(new File (postContent.get(index).getValue())));
} else {
// Normal string data
entity.addPart(postContent.get(index).getName(), new StringBody(postContent.get(index).getValue()));
}
}
httpPost.setEntity(entity);
HttpResponse response = httpClient.execute(httpPost, localContext);
mImgurResponse = parseResponse (response);
Iterator it = mImgurResponse.entrySet().iterator();
while(it.hasNext()){
HashMap.Entry pairs = (HashMap.Entry)it.next();
Log.i("INFO",pairs.getKey().toString());
if(pairs.getValue()!=null){
reviewEdit.setText(pairs.getValue().toString());
Log.i("INFO",pairs.getValue().toString());
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
private Map<String,String> parseResponse(HttpResponse response) {
String xmlResponse = null;
try {
xmlResponse = EntityUtils.toString(response.getEntity());
} catch (ParseException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
if (xmlResponse == null) return null;
HashMap<String, String> ret = new HashMap<String, String>();
ret.put("error", getXMLElementValue(xmlResponse, "error_msg"));
ret.put("delete", getXMLElementValue(xmlResponse, "delete_page"));
ret.put("original", getXMLElementValue(xmlResponse, "original_image"));
return ret;
}
private String getXMLElementValue(String xml, String elementName) {
if (xml.indexOf(elementName) >= 0)
return xml.substring(xml.indexOf(elementName) + elementName.length() + 1,
xml.lastIndexOf(elementName) - 2);
else
return null;
}
Gibt doch genug Beispiele:
|
|
|
02/14/2014, 22:31
|
#9
|
elite*gold: 7
Join Date: May 2009
Posts: 6,910
Received Thanks: 4,497
|
Das funktioniert leider alles nicht mehr, da die API (imgur v3) jetzt über OAuth funktioniert und für diese neue Funktion gibt es nirgends Beispiele für Java und um mir das alles selbst zusammenzubauen fehlt mir leider das nötige Wissen bzw. die Anleitung.
|
|
|
|
Similar Threads
|
Kann kein Bild in Signi hochladen
06/17/2012 - Main - 2 Replies
Hey liebe Leute.
Wenn ich ein Bild in der Signi reintuen will, kommt immer so ein ,,weißes platt mit Dreiceken oder so "
Aber dabei geht es um das : Directupload.net - 3c5ffhye.jpg
Kann mir jmd. helfen ?
|
[HILFE] Bild per WebRequest auf epvpimg.com hochladen
04/18/2012 - .NET Languages - 5 Replies
Ich versuche , ein ausgewähltes Bild im Programm , das per OpenFileDialog ausgewählt worden ist , auf epvpimg.com hochzuladen. Jedoch funktioniert das ganze nicht so richtig bzw. weiß ich nicht , wie ich das anstellen soll.
Würde mich über Hilfe freuen !
greetz
|
[HILFE] Bild per WebRequest auf epvpimg.com hochladen (VB.Net) / Biete 3 e*gold
04/18/2012 - elite*gold Trading - 0 Replies
Ich versuche , ein ausgewähltes Bild im Programm , das per OpenFileDialog ausgewählt worden ist , auf epvpimg.com hochzuladen. Jedoch funktioniert das ganze nicht so richtig bzw. weiß ich nicht , wie ich das anstellen soll.
Würde mich über Hilfe freuen !
(Als "Danke" gibt es 3 e*gold !)
greetz
|
[Hilfe] Kann kein bild hochladen
08/19/2011 - Technical Support - 1 Replies
Hey
ich habe ein problem das währe ich kann kein Bild hochladen
was könnten die gründe sein ??
|
[VB 2010] Bild aus PictureBox auf FTP Server hochladen
07/15/2011 - .NET Languages - 11 Replies
Wie kann ich ein Bild aus einer PictureBox direkt auf ein FTP Server hochladen ohne sie vorher auf den Computer zu speichern?
Ich habe schon viele Codes ausprobiert aber es Funktioniert nicht!
Ich habe schon Text oder abgespeicherte Dateien hochgeladen aber Bilder aus einer PictureBox hochladen geht nicht.
Ich wäre euch dankbar, wenn ihr mir hilft und den Code schreibt. :)
|
All times are GMT +2. The time now is 11:15.
|
|