URL ohne Browser aufrufen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von n1nja.

    URL ohne Browser aufrufen

    Hi&Nabend,

    ich beabsichtige mir ein kleines Tool zu programmieren, was in regelmäßigen Abständen eine URL aufruft um meine externe IP bei einem DynDNS-Anbieter festzulegen.
    Ich scheitere komplett gerade daran, dabei kann das doch nicht so schwierig sein oder?

    Ich habe mir schon die Hilfe von Microsoft angetan und erhalte immer HTTP 401 - Zugriff verweigert. Rufe ich die URL per Browser auf, kommt nur ein kleiner Text als Rückmeldung und ich habe meine DynDNS-Einträge aktualisiert ERFOLGREICH!!

    msdn.microsoft.com/de-de/library/debx8sh9(v=vs.110).aspx

    Kann mir da einer so ein bisschen Schützenhilfe geben und mir kurz erklären, welche Schritte ich da gehen muss.
    Eignet sich der Code von Microsoft dafür überhaupt oder ist das am Ziel vorbei?

    Danke für Eure Hilfe.
    Ich bin mir nicht 100%-ig sicher, was Du vor hast, aber der System.Net.WebClient könnte die Lösung sein. Abhängig davon, wie die URL aufgerufen werden muss, kannst Du die DownloadString- oder UploadData-Funktion verwenden.
    "Luckily luh... luckily it wasn't poi-"
    -- Brady in Wonderland, 23. Februar 2015, 1:56
    Desktop Pinner | ApplicationSettings | OnUtils
    also ich muss nur kurz diese URL aufrufen

    Quellcode

    1. ​http://DynHost-Identifier:Passwort@www.ovh.com/nic/update?system=dyndns&hostname=Subdomain&myip=NeueIPAdresse


    Das Programm soll aber keinen Browser aufrufen, weil es auf dem Server unbeobachtet laufen soll.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „kurzda“ ()

    Hallo,

    ich habe mir das bei Microsoft durchgelesen. Klappt auch nicht!! Gleicher Fehler mit Fehlercode 401.

    VB.NET-Quellcode

    1. Public Function fkt_Update(pstr_URL As String) As String
    2. Dim obj_WebClient As New WebClient()
    3. obj_WebClient.Headers.Add("user-agent", "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.124 Safari/537.36")
    4. Dim obj_Stream As Stream = obj_WebClient.OpenRead(pstr_URL)
    5. Dim obj_Reader As New StreamReader(obj_Stream)
    6. Dim str_Ergebnis As String = obj_Reader.ReadToEnd()
    7. Return str_Ergebnis
    8. obj_Stream.Close()
    9. obj_Reader.Close()
    10. End Function
    Bilder
    • fehlermeldung.PNG

      18,93 kB, 757×380, 184 mal angesehen
    Naja bleibt halt die Frage wie die die Autorisierung realisieren??
    Loggst du dich sonst vorher auf der Seite ein und machst dann den Link auf, oder reicht es wenn du im Browser nur die URL aufrufst?

    Kann halt auch sein, dass du zb. erst die Startseite besuchen musst, da wird n Cookie gesetzt um zu erfahren "jo der war hier, jetzt darf er auch die URL aufrufen", etc..
    Polling is trolling!

    Achtung: Ich habe die komische Angewohnheit, simple Dinge zu verkomplizieren..
    Im Browser wirst du aber deine Cookies gespeichert haben und deswegen wirst du nicht aufgefordert dich einzuloggen.
    Sende Requests an den Server und logge dich auf der Seite ein.

    Schau dir dazu dieses Tut an:
    HttpWebRequest Tutorial (Für anfänger)