Pdf ist keine Pdf

N

N3cron

Fortgeschrittenes Mitglied
1
Hallo zusammen. Ich habe ein Problem mit Pdf dateien.

Es liegen auf einem server pdf Dateien. Der name ist eindeutig xxx.pdf
Die Url die man anklickt ist allerdings diese

http://192.168.16.2/index.php?page=...58&h=051501f5fd36944b3213f1f1b52ba41badd7892f

Wie komme ich daran? Mit dem Dolphin Browser funktioniert es, was ich nicht vesrstehen kann, denn es gibt keine " .pdf " endung.
Sobald ich in meiner app sage if (url.contains("attachment")) kann ich zb den acrobat reader extern öffnen. Ist auch vollkommen ausreichend.

Nur lädt dieser keine Datei, da er scheinbar nicht erkennt das es eine pdf ist.

Problem ist für mich schwer zu erklären, hoffe aber ihr habt es verstanden und könnt mit helfen.

Es ist ein Server auf der Arbeit, der kein Internet besitzt. Aber für uns im Wlan erreichbar. Der Server hat ein Forum, das glaube ich diesem hier ähnelt.

Portal - SkodaCommunity.de - Das Skoda Auto [ Fabia Octavia Superb Roomster Felicia Favorit Yeti ] Forum


Danke für Hilfe
 
Du musst die Header auswerten der http Abfrage auswerten.
Da wird der Content Type (Aplication/pdf) und evtl. der Dateiname drinstehen.

Besorge die mal wget und rufe die URL auf, dann werden die die Header angezeigt.

Und dann speicherst du die Datei halt mit dem korrekten Namen.

cu
 
Hi. Danke für deine Antwort.

Was ist denn wget?
 
Ein Programm mit dem man per http Dinge abrufen kann.
Dabei zeigt es sehr genau an was da passiert, sollte man wissen wenn man in diesem Bereich programiert/debuggt ;-)

cu
 
Sorry. Anfänger "fehler" :smile:

Werde es mir anschauen. Danke

Der ursprüngliche Beitrag von 17:35 Uhr wurde um 18:14 Uhr ergänzt:

Hi. Habs mir angeschaut und auch getestet. Muss heute abend auf nachtschicht, und könnte es dann evtl testen. Welche befehle soll ich alle nutzen / was alles auslesen?
 
Einfach mal "wget http://halt diese url" auf der Kommandozeile aufrufen und die Ausgabe hier posten. Dann weiß man wenigstens worüber man redet ;-)

cu
 
Ok. Melde mich morgen ab 14 Uhr wieder.

Danke
 
Hallo zusammen. Ich hoffe es ist so richtig. Habe mit wget die url eingegeben und ausgelesen. Anbei ein Bild der Eigenschaften der pdf

Hänge die Dateien an.
 

Anhänge

  • pdf eigenschaften1.jpg
    pdf eigenschaften1.jpg
    30,5 KB · Aufrufe: 248
  • index.txt
    15 KB · Aufrufe: 150
So rihntrha... wie geht es weiter? :biggrin:
 
Tja... ;-)
Eigentlich ging es um die Bildschirmausgaben von wget. Die Dateieigenschaften sind egal.

Aber das was da runtergeladen wurde ist kein pdf sondern eine Webseite.
Die prüft ob der Nutzer eingeloggt ist (vermutlich) und leitet dann zu richtigen Datei um.
Teste die URL mal in nem Browser der nicht eingeloggt ist, dann siehst du das.

cu
 
Zuletzt bearbeitet:
Über den Dolphin Browser sowie am PC funktioniert es doch auch

Ps. sobald ich bei wget die url für die pdf angegebe, speichert er keine datei ab da er wegen der url (attachmen, und id) meckert
 
Ich bin JETZT fertig mit dem Posting ;-) Lese nochmal ich hatte noch was angefügt.

cu
 
Es ist ja ein Forum. Ich komme erst zu den pdf dateien sobald ich eingeloggt bin. Deshalb habe ich die Eigenschaften vom pdf link angehängt.
 

Anhänge

  • anhang.jpg
    anhang.jpg
    7,3 KB · Aufrufe: 203
Nein, der Link auf deinem Screenshot ruft eine Webseite auf und kein PDF.

Diese Webseite prüft nochmal ob du eingeloggt bist.

Rufe den "PDF Link" mal in nem Browser auf bei dem du nicht im Forum eingeloggt bist.

cu
 
Verstehe ich dich richtig? Ich soll mich einloggen, die pdf anklicken. Die url kopieren. Dann in den zb dolphin browser gehen und ohne mich im Forum einzuloggen die URL zur pdf eingeben? Wird doch die Antwort kommen "Zugriff verweigert".

Verstehe glaube ich nicht ganz wie du das meinst

Ps. Werde es heute abend nochmals prüfen, bin mir aber recht sicher das wenn ich den anhang anklicke die (eigenschaften foto) url genau diese ist die dann im browser steht
 
Du willst ne App schreiben die diese PDF runterlädt. Korrekt?

Ist deine App ins Forum eingeloggt? Du verstehst das Problem? ;-)

cu
 
Also. Ich habe eine App geschrieben. Diese loggt die Person automatisch ein und verbindet mit dem Forum. Habe dann einen Filechooser eingebaut wlan an /aus usw. Jetzt muss ich nur noch PDF dateien entweder downloaden können, oder extern in einem PDF reader öffnen können. Öffnen wäre die schönste Variante.
Der bisherige Code für die PDF ist dieser. Allerdings reagiert er nicht darauf weil der Anhang der pdf kein " .pdf " beinhaltet. Sondern beim anklicken der Datei am PC das hier passiert

HTML:
http://192.168.16.2/index.php?page=Attachment&attachmentID=1058&h=051501f5fd36944b3213f1f1b52ba41badd7892f

HTML:
        // WebView Settings
        //
        wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
        webView = (WebView) findViewById(R.id.webView1);
        webView.setWebViewClient(new WebViewClient());
        webView.setWebChromeClient(new WebChromeClient());
        webView.getSettings().setLoadsImagesAutomatically(true);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setAppCacheEnabled(true);
        webView.getSettings().setAllowFileAccess(true);
        webView.getSettings().setBuiltInZoomControls(true);
        webView.getSettings().setDisplayZoomControls(false);
        webView.getSettings().setLoadWithOverviewMode(true);
        webView.getSettings().setUseWideViewPort(true);
        webView.getSettings().setDomStorageEnabled(true);
        webView.setInitialScale(100);
//        webView.loadUrl("http://www.fraunhofer.de");
//         webView.loadUrl("http://www.he-man.de");
         String url = "http://192.168.16.2/index.php?form=UserLogin";
         SharedPreferences prefs = getSharedPreferences("Password.xml",
         MODE_PRIVATE);
         String Loginusername = prefs.getString("loginUsername", null);
         String password = prefs.getString("password", "");
         if (Loginusername != null) {
         String data = "loginUsername=" + Loginusername + "&password="
         + password;
         webView.postUrl(url, EncodingUtils.getBytes(data, "base64"));
        
         } else {
         Toast.makeText(getBaseContext(), "Kein Login gespeichert",
         Toast.LENGTH_LONG).show();
         Intent intent = new Intent(MainActivity.this, Password.class);
         MainActivity.this.startActivity(intent);
         webView.reload();
        
         }

    
    

//         Eventuell PDF
         webView.setWebViewClient(new WebViewClient() {
         public boolean shouldOverrideUrlLoading(WebView view, String url) {
         if (url.contains(".pdf")) {
        
         Intent intent = new Intent(Intent.ACTION_VIEW);
         intent.setData(Uri.parse(url));
         startActivity(intent);
        
         return true;
         }
         return false;
         }
         });
 
Wird das Cookie im ersten Webview gespeichert so das der zweite das auch hat?
D.h. ist das untere Webview auch eingeloggt?

cu
 
Verstehe ich nicht ganz. Der Code geht ist ja nicht komplett gepostet.
Zum anderen, ist das wichtig für die pdf?

Wie du in dem url link gesehen hast, ist dort überhaupt keine endung mit .pdf .Als wenn die url weiterleitet. Dabei liegen laut dem Kollegen alle pdf auf dem selben Laufwerk wie Fotos. Diese kann ich mir anschauen im webview und auch per filechooser fotos hochladen


Ach ja.... wenn ich mit dem App zur Frauenhofer Seite gehe, und dort eine pdf anklicke öffnet er den Pdf Reader und lädt die Datei. Also dort ist die Funktion gegeben
 
Die Endung ist egal. Die URL ist egal. Wichtig ist was der Webserver dir gibt wenn du die URL aufrufst.

Und wenn du nicht eingeloggt bist (d.h. beim Aufruf der URL den passenden Cockie mitlieferst) dann gibt dir der Webserver keine pdf Datei sondern eine Webseite.

D.h. beim zweiten Webview wird keine PDF vom Server kommen. Aber das hat nix mit der URL oder dem Dateinamen zu tun sondern der Server gibt dir einfach das pdf nicht, weil dieser Webview nicht eingeloggt ist. Das ist jedenfalls die Vermutung.
Das musst du jetzt prüfen. D.h. lasse dir anzeigen was der Server dir im zweiten Webview liefert.

cu
 
Zuletzt bearbeitet:

Ähnliche Themen

5
Antworten
22
Aufrufe
1.420
590239
5
U
  • unerfahrenerAppEntwickler
Antworten
3
Aufrufe
705
swa00
swa00
Zurück
Oben Unten