Quantcast
Aktuelles
Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

VMOD Sonstige HTTP Response wird nicht aktualisiert

Convert

Ist gelegentlich hier
Registriert
12. Februar 2015
Beiträge
38
Reaktionspunkte
1
Punkte
28
Hey Leute
Ich habe mir einen kleines Script in Java geschrieben, welches den Token per HTTP Request im Response Body kriegt, diese dann weiter an die vJackson Template list reicht , zusammenfügt und für mich als fertige m3u liste bereit stellt.
Danke an heblthom für die Idee mit dem HTTP Request

Wird ein HTTP Request über die APITEST Seite abgeschickt funktioniert alles.
Versuche ich selbst einen Request mit Java oder Curl abzuschicken, wird nur beim ersten start des Programms (auf einem Computer) ein aktueller Response generiert, jedes weitere Mal wird nur die gecachte Version geladen.

Die Methode um die es geht befindet sich im 5. Post
 
Zuletzt bearbeitet:
@HostBuster @TCoreXxx
Dachte ich auch deswegen den Cache Control auf no-cache gesetzt
Usecache auf false
Funktioniert trotzdem nicht
Er nimmt trotzdem die gecachte Version
 
und wenn du den Cache gleich zu Anfang leerst?
wie meinst du das?

Also im Moment öffnet er eine Verbindung und vor der Authentifizierung mit dem User-Agent wird der cache auf false gesetzt und per setproperty einige Sachen im Header die fürn Cache sind deaktiviert (siehe java Code).
Am Ende Terminiert sich das Programm also sollte es kein client seitiger cache sein, da das Programm bei jedem start eine Verbindung neu öffnet.
Ich kann ja den Cache nicht löschen bevor ein Object erstellt worden ist.
Also erst nach dieser Zeile: HttpURLConnection con = (HttpURLConnection) obj.openConnection(); ist es mir möglich cache zu löschen



Viel mehr habe ich das Gefühl wird von CloudFlare gecached oder ein Proxy ignoriert den no cache flag.



Hab das ganze nochmal mit curl versucht, klappt auch nicht.



Andererseits scheints ja auf der API-Tester Seite ( ) zu funktionieren.
D.h was macht diese Seite anders als ich ^^

Hier ist nochmal der aktuellere Code mit den ganzen no cache Flags

Java:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

import java.util.List;
import java.util.Map;

public class ResponseHeaderAndBody {

    public static void main(String[] args) {

        try {
        
            URL obj = new URL("http://www.vavoo.tv/api/box/guest");
        
            HttpURLConnection con = (HttpURLConnection) obj.openConnection();
                con.setRequestProperty("Cache-Control", "max-age=0");
                con.setUseCaches(false);
        
          
        
        
            con.setRequestProperty("Cache-Control", "no-cache");
            con.setRequestProperty("Cache-Control", "must-revalidate");
        
        
            con.setRequestMethod("POST");
            con.setRequestProperty("User-Agent", "VAVOO/1.51");
            con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
        

            Map<String, List<String>> map = con.getHeaderFields();




            System.out.println("Printing Response Header...\n");

            for (Map.Entry<String, List<String>> entry : map.entrySet()) {
                System.out.println("Key : " + entry.getKey()
                + " ,Value : " + entry.getValue());
            }

            String server = con.getHeaderField("Server");
        
        

            if (server == null) {
                System.out.println("Key 'Server' is not found!");
            } else {
                System.out.println("Server - " + server);
            }

            System.out.println("\nGet Response Body: \n");
        

            int responseCode = con.getResponseCode();
            if(responseCode == 200){


                BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
                String inputLine;
                StringBuffer response = new StringBuffer("");

                while ((inputLine = in.readLine()) != null) {
                    response.append(inputLine);
                }
                con.disconnect();
                in.close();
                System.out.println(response.toString());

            }
        }catch (Exception e) {
            e.printStackTrace();
        }

    }
}

Curl Code:
curl -A "VAVOO/1.51" -H "Cache-Control: no-cache" -X POST http://www.vavoo.tv/api/box/guest -o "C:/Users/Administrator/Documents/ClearScript/response.txt"
 
Zuletzt bearbeitet:
Villt magst du ja bei Gelegenheit drüber gucken.
Hab villt was übersehen
Der Curl Befehl ist aber richtig ?
 
curl Befehl ist korrekt, soweit ich das sehe. Hast du die Möglichkeit, das ganze von einem Webserver auszuführen? Vielleicht haut dir Router oder Provider dazwischen
Ich kucks mir aber morgen mal genauer an

edit
musst vom Server natürlich den curl Befehl ändern ;)
 
Zuletzt bearbeitet:
Ich kucks mir aber morgen mal genauer an
Danke dir :)

Mit einem Webserver dürfte es problematisch werden.
Ich habe zwar Zugriff auf einen Windows Server auf dem man ggf einen Webserver aufsetzten kann oder halt per VM einen separater Linux Webserver als zweit System.
Würde dies aber nur als letzte Möglichkeit in Betracht ziehen.
Ein Hosted Server steht mir leider nicht zu Verfügung.


Getestet habe ich das auf verschiedenen Computern mit Windows 10 und Windows Server 2012 r2.
Router sind verschieden (TP-Link u. Fritzbox), wie auch die Provider (1&1 u KD).
 
Zuletzt bearbeitet:
Hat zwar nicht direkt mit meinem Problem zu tun, aber trotzdem interessant.
Ich habe versucht jetzt mit hilfe der Seite einen Request mit Curl abzuschicken.
Man kann davon ausgehen das Cloudflare IP's Blacklistet. Die Adresse von der aus der Curl befehl abgschickt wird, gibt diesen sehr interessanten Response her:

HTML:
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en-US"> <![endif]-->
<!--[if IE 7]>    <html class="no-js ie7 oldie" lang="en-US"> <![endif]-->
<!--[if IE 8]>    <html class="no-js ie8 oldie" lang="en-US"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en-US"> <!--<![endif]-->
<head>
<title>Access denied | www.vavoo.tv used Cloudflare to restrict access</title>
<meta charset="UTF-8" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
<meta name="robots" content="noindex, nofollow" />
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1" />
<link rel="stylesheet" id="cf_styles-css" href="/cdn-cgi/styles/cf.errors.css" type="text/css" media="screen,projection" />
<!--[if lt IE 9]><link rel="stylesheet" id='cf_styles-ie-css' href="/cdn-cgi/styles/cf.errors.ie.css" type="text/css" media="screen,projection" /><![endif]-->
<style type="text/css">body{margin:0;padding:0}</style>


<!--[if gte IE 10]><!--><script type="text/javascript" src="/cdn-cgi/scripts/zepto.min.js"></script><!--<![endif]-->
<!--[if gte IE 10]><!--><script type="text/javascript" src="/cdn-cgi/scripts/cf.common.js"></script><!--<![endif]-->



</head>
<body>
  <div id="cf-wrapper">
    <div class="cf-alert cf-alert-error cf-cookie-error" id="cookie-alert" data-translate="enable_cookies">Please enable cookies.</div>
    <div id="cf-error-details" class="cf-error-details-wrapper">
      <div class="cf-wrapper cf-header cf-error-overview">
        <h1>
          <span class="cf-error-type" data-translate="error">Error</span>
          <span class="cf-error-code">1010</span>
          <small class="heading-ray-id">Ray ID: 46cfb45b37769dbb &bull; 2018-10-21 00:45:58 UTC</small>
        </h1>
        <h2 class="cf-subheadline">Access denied</h2>
      </div><!-- /.header -->

      <section></section><!-- spacer -->

      <div class="cf-section cf-wrapper">
        <div class="cf-columns two">
          <div class="cf-column">
            <h2 data-translate="what_happened">What happened?</h2>
            <p>The owner of this website (www.vavoo.tv) has banned your access based on your browser's signature (46cfb45b37769dbb-ua60).</p>
          </div>

         
        </div>
      </div><!-- /.section -->

      <div class="cf-error-footer cf-wrapper">
  <p>
    <span class="cf-footer-item">Cloudflare Ray ID: <strong>46cfb45b37769dbb</strong></span>
    <span class="cf-footer-separator">&bull;</span>
    <span class="cf-footer-item"><span>Your IP</span>: 52.22.15.43</span>
    <span class="cf-footer-separator">&bull;</span>
    <span class="cf-footer-item"><span>Performance &amp; security by</span> <a href="https://www.cloudflare.com/5xx-error-landing?utm_source=error_footer" id="brand_link" target="_blank">Cloudflare</a></span>
   
  </p>
</div><!-- /.error-footer -->


    </div><!-- /#cf-error-details -->
  </div><!-- /#cf-wrapper -->

  <script type="text/javascript">
  window._cf_translation = {};


</script>

</body>
</html>
 
Zuletzt bearbeitet von einem Moderator:
Zurück
Oben