Ich versuche, das Java-HTML-Dokument ein wenig zu verbessern, aber ich habe Probleme mit der HttpUrlConntion
. Eine Sache ist, dass einige Server eine Anfrage blockieren, wenn der Benutzeragent eine Java-VM ist. Ein anderes Problem ist, dass die Variable HttpUrlConnection
das Headerfeld Referrer
oder Location
nicht setzt. Da mehrere Websites diese Felder verwenden, um zu überprüfen, ob auf die Inhalte von ihrer eigenen Website aus zugegriffen wurde, bin ich auch hier blockiert. Soweit ich sehen kann, besteht die einzige Lösung darin, den URL-Handler des HTTP-Protokolls zu ersetzen. Oder gibt es eine Möglichkeit, den Standard-HTTP-Handler zu ändern?
Öffnen Sie die URL
mit URL.openConnection
. Optional in HttpURLConnection
umwandeln. Rufen Sie URLConnection.setRequestProperty
/addRequestProperty
auf.
Der Standardwert für den User-Agent-Header wird in der Systemeigenschaft "http.agent"
festgelegt. Mit dem PlugIn und dem WebStart können Sie diese Eigenschaft festlegen.
Wenn Sie Apache HttpClient verwenden, um Ihre programmatische HTTP-Konnektivität zu verwalten, erhalten Sie eine äußerst nützliche API, die das Herstellen von Verbindungen (und das optionale automatische erneute Herstellen der Verbindung bei einem Fehler) sowie das Festlegen von Headern, Posts vs. und sehr viel mehr.
Ich habe mein Problem gelöst. Wir können den Header einfach an application/json senden und den Body als Json-Objekt übergeben. Das löst das Problem einfach.