|
You last visited: Today at 14:12
Advertisement
[C#] HttpWebRequest POST multipart [Hilfe]
Discussion on [C#] HttpWebRequest POST multipart [Hilfe] within the .NET Languages forum part of the Coders Den category.
03/30/2014, 22:43
|
#1
|
elite*gold: 45
Join Date: Apr 2009
Posts: 896
Received Thanks: 398
|
[C#] HttpWebRequest POST multipart [Hilfe]
kann geclosed werden,
gelöst.
|
|
|
03/30/2014, 22:52
|
#2
|
elite*gold: 1
Join Date: Jun 2012
Posts: 5,819
Received Thanks: 3,200
|
Was genau funktioniert denn nicht bzw. welche Fehlermeldung gibt die Seite denn zurück?
So wie ich das entnehmen kann, updatest du den "authenticity_token" nicht. Eventuell liegt es daran.
Ansonsten schau mal, ob er eventuell beim ersten Seitenaufruf irgendwelche Cookies setzt, die bei dir nicht vorhanden sind
|
|
|
03/30/2014, 22:56
|
#3
|
elite*gold: 45
Join Date: Apr 2009
Posts: 896
Received Thanks: 398
|
Also da erscheint keine fehlermeldung hab mal den breakpoint auf das ergebnis gesetzt da wird die ask.fm startseite angezeigt also der quellcode.
Ich schau mal morgen nach wo der authenticity_token entnommen wird.
Danke nochmals
|
|
|
03/30/2014, 23:00
|
#4
|
elite*gold: 1
Join Date: Jun 2012
Posts: 5,819
Received Thanks: 3,200
|
Der sollte der auf der Registrationsseite zu finden sein. Du musst dann so vorgehen:
1. Request -> Registrationsseite
2. Token aus dem Quelltext parsen
3. Request -> Post mit token
Eventuell musst du noch andere Headers, wie z.B. den Referer setzen
|
|
|
03/31/2014, 08:27
|
#5
|
elite*gold: 45
Join Date: Apr 2009
Posts: 896
Received Thanks: 398
|
Quote:
Originally Posted by Waka Toa
Der sollte der auf der Registrationsseite zu finden sein. Du musst dann so vorgehen:
1. Request -> Registrationsseite
2. Token aus dem Quelltext parsen
3. Request -> Post mit token
Eventuell musst du noch andere Headers, wie z.B. den Referer setzen
|
Und was muss ich als ContentType
nehmen?
|
|
|
03/31/2014, 16:39
|
#6
|
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
|
Wozu das Rad neu erfinden?
- siehe Antwort von "loop".
noch als Referenz dazu.
|
|
|
03/31/2014, 17:33
|
#7
|
elite*gold: 45
Join Date: Apr 2009
Posts: 896
Received Thanks: 398
|
[C#] HttpWebRequest POST multipart [Hilfe]
Und was ist mit dem webkitformboundary?
|
|
|
03/31/2014, 18:09
|
#8
|
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
|
Quote:
Originally Posted by EqoTime
Und was ist mit dem webkitformboundary?
|
Das interessiert dann nicht mehr, das macht die Library von selbst. Dafür muss nicht das selbe Boundary deiner geposteten Anfrage genutzt werden. Wichtig ist nur, dass das Boundary überall in der Anfrage einheitlich ist, damit (wie die Bezeichnung schon aussagt) differenziert werden kann.
|
|
|
03/31/2014, 18:18
|
#9
|
elite*gold: 45
Join Date: Apr 2009
Posts: 896
Received Thanks: 398
|
Quote:
Originally Posted by Mostey
Das interessiert dann nicht mehr, das macht die Library von selbst. Dafür muss nicht das selbe Boundary deiner geposteten Anfrage genutzt werden. Wichtig ist nur, dass das Boundary überall in der Anfrage einheitlich ist, damit (wie die Bezeichnung schon aussagt) differenziert werden kann.
|
Ok werde es heute abend mal testen danke nochmals. Und hab da noch ne frage, was meinst du mit noch den referenz von http namespace, also das 2. link?
MfG
|
|
|
03/31/2014, 18:21
|
#10
|
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
|
Quote:
Originally Posted by EqoTime
Ok werde es heute abend mal testen danke nochmals. Und hab da noch ne frage, was meinst du mit noch den referenz von http namespace, also das 2. link?
MfG
|
Damit du den Namespace kennst. Außerdem ist System.Net.Http kein Standardassembly, das musst du nachinstallieren. (Über NuGet zum Beispiel)
|
|
|
03/31/2014, 18:24
|
#11
|
elite*gold: 45
Join Date: Apr 2009
Posts: 896
Received Thanks: 398
|
Quote:
Originally Posted by Mostey
Damit du den Namespace kennst. Außerdem ist System.Net.Http kein Standardassembly, das musst du nachinstallieren. (Über NuGet zum Beispiel)
|
Ok werde mir das dann mal laden, dachte die ist mit in system.net drine
Edit: Mostey komme mit deiner Version nicht klar, verstehe es einfach nicht.
Waka Toe: hab den token gefunden ich lade den durch einen get und speichere es in eine string usw. mit dem gleichen cookiecontainer auch zur sicherheit, klappt aber immernoch nicht. Ich glaube es liegt am Content Type.
Hier ist die Header datei die gesendet wird.
Code:
POST http://ask.fm/register HTTP/1.1
Host: ask.fm
Connection: keep-alive
Content-Length: 1410
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Origin: http://ask.fm
User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary5UuD6XunTmjwPbIY
Referer: http://ask.fm/signup
Accept-Encoding: gzip,deflate,sdch
Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4,tr;q=0.2
Cookie: __qca=P0-1793600954-1393536757156; mobile_view=false; language_id=14; rbox_type=1; rbox_toggle=2; country_id=43; country_code=DE; __utma=71640835.1704127237.1393536757.1396034911.1396183971.5; __utmb=71640835.28.10.1396183971; __utmc=71640835; __utmz=71640835.1396034911.4.3.utmcsr=facebook.com|utmccn=(referral)|utmcmd=referral|utmcct=/; _ask.fm_session=BAh7CToQb2xkX2dldF91cmwiDC9zaWdudXA6EF9jc3JmX3Rva2VuIjFDczQyWVdCSjJnWkJhdlVhK0tXQmZPRVBCVk1pd2NTM3d0VkI1ZVhzNnNvPToccmVnaXN0cmF0aW9uX3N0YXJ0X3RpbWUiFjEzOTYxODUzMjAgNTc5ODMzOg9zZXNzaW9uX2lkIiUwZTBkYjc4YjU4ZjQ5ODZmYzUxMWI2NzljNjU1YTllOA%3D%3D--161d855985afca3f6dcf1f47b1b831105cc3b82a
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="authenticity_token"
Cs42YWBJ2gZBavUa+KWBfOEPBVMiwcS3wtVB5eXs6so=
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[login]"
usernametest123
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[name]"
vornametest nachnametest
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[password]"
testpw
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[password_confirmation]"
testpw
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[email]"
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[born_at_day]"
6
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[born_at_month]"
6
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[born_at_year]"
1996
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[gmt_offset]"
-120
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[language_id]"
14
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="commit"
Registrieren
------WebKitFormBoundary5UuD6XunTmjwPbIY--
HTTP/1.1 302 Found
Content-Type: text/html; charset=utf-8
Content-Length: 131
Status: 302 Found
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Set-Cookie: l=; domain=ask.fm; path=/; expires=Thu, 01-Jan-1970 00:00:00 GMT
Set-Cookie:
Set-Cookie: auth_token=; path=/; expires=Thu, 01-Jan-1970 00:00:00 GMT
Set-Cookie:
Set-Cookie: country_id=43; domain=ask.fm; path=/; expires=Mon, 30-Mar-2015 13:42:26 GMT
Set-Cookie:
Set-Cookie: country_code=DE; domain=ask.fm; path=/; expires=Mon, 30-Mar-2015 13:42:26 GMT
Set-Cookie:
Set-Cookie: language_id=14; domain=ask.fm; path=/; expires=Mon, 30-Mar-2015 13:42:26 GMT
Set-Cookie: _ask.fm_session=BAh7CjoQb2xkX2dldF91cmwiDC9zaWdudXA6GXNob3dfY29udmVyc2lvbl9jb2RlVCIKZmxhc2hJQzonQWN0aW9uQ29udHJvbGxlcjo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiNER1IGhhc3QgZGljaCBlcmZvbGdyZWljaCBhdWYgQXNrLmZtIHJlZ2lzdHJpZXJ0BjoKQHVzZWR7BjsIRjoMdXNlcl9pZGkEjY8lBzoPc2Vzc2lvbl9pZCIlN2YyM2JlYjYzOTg3ZmI4YTZhODUxZTkxYjlhMjk5Zjg%3D--2c68400db7ea7665792bb212831daf352d8b5add; path=/; HttpOnly
X-Content-Type-Options: nosniff
X-Runtime: 114
Cache-Control: no-cache
Location: http://ask.fm/account/social-friends/facebook/facebook?redir=home
X-Powered-By: Phusion Passenger 4.0.20
Date: Sun, 30 Mar 2014 13:42:26 GMT
Server: nginx/1.4.2 + Phusion Passenger 4.0.20
|
|
|
04/03/2014, 16:54
|
#12
|
elite*gold: 45
Join Date: Apr 2009
Posts: 896
Received Thanks: 398
|
habe immernoch keine lösung :S
Fehlermeldung beim start:
auf HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse();
wird diese fehlermeldung angezeigt:
Ein Ausnahmefehler des Typs "System.Net.WebException" ist in System.dll aufgetreten.
Zusätzliche Informationen: Der Remoteserver hat einen Fehler zurückgegeben: (500) Interner Serverfehler.
|
|
|
04/03/2014, 17:56
|
#13
|
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
|
Quote:
Originally Posted by EqoTime
Ok werde mir das dann mal laden, dachte die ist mit in system.net drine
Edit: Mostey komme mit deiner Version nicht klar, verstehe es einfach nicht.
Waka Toe: hab den token gefunden ich lade den durch einen get und speichere es in eine string usw. mit dem gleichen cookiecontainer auch zur sicherheit, klappt aber immernoch nicht. Ich glaube es liegt am Content Type.
Hier ist die Header datei die gesendet wird.
Code:
POST http://ask.fm/register HTTP/1.1
Host: ask.fm
Connection: keep-alive
Content-Length: 1410
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Origin: http://ask.fm
User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary5UuD6XunTmjwPbIY
Referer: http://ask.fm/signup
Accept-Encoding: gzip,deflate,sdch
Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4,tr;q=0.2
Cookie: __qca=P0-1793600954-1393536757156; mobile_view=false; language_id=14; rbox_type=1; rbox_toggle=2; country_id=43; country_code=DE; __utma=71640835.1704127237.1393536757.1396034911.1396183971.5; __utmb=71640835.28.10.1396183971; __utmc=71640835; __utmz=71640835.1396034911.4.3.utmcsr=facebook.com|utmccn=(referral)|utmcmd=referral|utmcct=/; _ask.fm_session=BAh7CToQb2xkX2dldF91cmwiDC9zaWdudXA6EF9jc3JmX3Rva2VuIjFDczQyWVdCSjJnWkJhdlVhK0tXQmZPRVBCVk1pd2NTM3d0VkI1ZVhzNnNvPToccmVnaXN0cmF0aW9uX3N0YXJ0X3RpbWUiFjEzOTYxODUzMjAgNTc5ODMzOg9zZXNzaW9uX2lkIiUwZTBkYjc4YjU4ZjQ5ODZmYzUxMWI2NzljNjU1YTllOA%3D%3D--161d855985afca3f6dcf1f47b1b831105cc3b82a
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="authenticity_token"
Cs42YWBJ2gZBavUa+KWBfOEPBVMiwcS3wtVB5eXs6so=
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[login]"
usernametest123
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[name]"
vornametest nachnametest
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[password]"
testpw
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[password_confirmation]"
testpw
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[email]"
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[born_at_day]"
6
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[born_at_month]"
6
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[born_at_year]"
1996
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[gmt_offset]"
-120
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="user[language_id]"
14
------WebKitFormBoundary5UuD6XunTmjwPbIY
Content-Disposition: form-data; name="commit"
Registrieren
------WebKitFormBoundary5UuD6XunTmjwPbIY--
HTTP/1.1 302 Found
Content-Type: text/html; charset=utf-8
Content-Length: 131
Status: 302 Found
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Set-Cookie: l=; domain=ask.fm; path=/; expires=Thu, 01-Jan-1970 00:00:00 GMT
Set-Cookie:
Set-Cookie: auth_token=; path=/; expires=Thu, 01-Jan-1970 00:00:00 GMT
Set-Cookie:
Set-Cookie: country_id=43; domain=ask.fm; path=/; expires=Mon, 30-Mar-2015 13:42:26 GMT
Set-Cookie:
Set-Cookie: country_code=DE; domain=ask.fm; path=/; expires=Mon, 30-Mar-2015 13:42:26 GMT
Set-Cookie:
Set-Cookie: language_id=14; domain=ask.fm; path=/; expires=Mon, 30-Mar-2015 13:42:26 GMT
Set-Cookie: _ask.fm_session=BAh7CjoQb2xkX2dldF91cmwiDC9zaWdudXA6GXNob3dfY29udmVyc2lvbl9jb2RlVCIKZmxhc2hJQzonQWN0aW9uQ29udHJvbGxlcjo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiNER1IGhhc3QgZGljaCBlcmZvbGdyZWljaCBhdWYgQXNrLmZtIHJlZ2lzdHJpZXJ0BjoKQHVzZWR7BjsIRjoMdXNlcl9pZGkEjY8lBzoPc2Vzc2lvbl9pZCIlN2YyM2JlYjYzOTg3ZmI4YTZhODUxZTkxYjlhMjk5Zjg%3D--2c68400db7ea7665792bb212831daf352d8b5add; path=/; HttpOnly
X-Content-Type-Options: nosniff
X-Runtime: 114
Cache-Control: no-cache
Location: http://ask.fm/account/social-friends/facebook/facebook?redir=home
X-Powered-By: Phusion Passenger 4.0.20
Date: Sun, 30 Mar 2014 13:42:26 GMT
Server: nginx/1.4.2 + Phusion Passenger 4.0.20
|
Was verstehst du daran nicht? Ich habe dir einen Link mit der idealen Anwendung gegeben, den Code brauchtest du theoretisch nur kopieren und anpassen.
Quote:
Originally Posted by EqoTime
Ein Ausnahmefehler des Typs "System.Net.WebException" ist in System.dll aufgetreten.
Zusätzliche Informationen: Der Remoteserver hat einen Fehler zurückgegeben: (500) Interner Serverfehler.
|
Quote:
The server failed to fulfill an apparently valid request.[2]
Response status codes beginning with the digit "5" indicate cases in which the server is aware that it has encountered an error or is otherwise incapable of performing the request. Except when responding to a HEAD request, the server should include an entity containing an explanation of the error situation, and indicate whether it is a temporary or permanent condition. Likewise, user agents should display any included entity to the user. These response codes are applicable to any request method.
|
Quote:
500 Internal Server Error
A generic error message, given when an unexpected condition was encountered and no more specific message is suitable.[2]
|
List of HTTP status codes - Wikipedia, the free encyclopedia
Ohne zu wissen, was hier passiert oder versucht wird, können wir nicht viel helfen. Du postest ja so gut wie nie irgendwelchen Code.
|
|
|
04/03/2014, 18:06
|
#14
|
elite*gold: 45
Join Date: Apr 2009
Posts: 896
Received Thanks: 398
|
ich bekomme bei: HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse();
immer den http 500 fehler.
|
|
|
04/03/2014, 23:56
|
#15
|
elite*gold: 1000
Join Date: Apr 2012
Posts: 1,003
Received Thanks: 208
|
Dann ist dein request fehlerhaft.
|
|
|
|
|
Similar Threads
|
[VB.NET] MultiPart-HttpWebRequest (Upload)
12/04/2013 - Coding Tutorials - 13 Replies
Hier mal ein kleines Beispiel wie man mit HttpWebRequest eine Datei hochladen kann, in diesem Fall ein Bild auf epvpimg.com.
Vom Prinzip her funktioniert ein MultiPart Request eigentlich genauso wie ein normaler Request auch, man muss einfach den Post-String, welches im LiveHttpHeaders angezeigt wird, nachbilden.
Da ich hier: HttpWebRequest - Tutorial bereits ein Tutorial über WebRequest erstellt habe, werde ich in diesem Thread nicht mehr so genau darauf eingehen und alles detailiert...
|
Hilfe bei HttpWebRequest
05/21/2013 - .NET Languages - 4 Replies
Hallo Leute ich arbeite mit VB.net und HttpWebRequest an einem Youtube Downloader. Aber ich brauch Hilfe bei einer Sache...
If SEITENQUELLTEXT.contains("Download") Then
Und dann soll er folgenden href klicken:
<a style="font-size: 17px; color:#33ee33" href="/download/6135812" target="_blank">Download</a>
Ich freue mich über Hilfe :)
|
Suche hilfe bei httpwebrequest
12/18/2012 - .NET Languages - 3 Replies
^Topic.
Habe mir schon tutorials unzählige male angeschaut.
Leider kapier ich nichts von httpwebrequest
Habe viel vb.net erfahrung
live http headers oder wie das heisst habe ich auch
Möchte es kapieren und KEIN tutorial!
Bitte per Skype melden.
|
Suche hilfe zu httpwebrequest
11/18/2012 - .NET Languages - 3 Replies
Hey com.
Ich habe schon viel erfahrung in vb.net und möchte jetzt mit bots in der Sprache anfangen.
Ich habe schon ein paar Tutorials gesehen aber kapiere das immernoch nicht.
Ich möche einen Bot für Addmefast schreiben. Nur schreiben, ichweiß das da ein Botschutz ist. Er soll sich einloggen und die Videos Liken.
Bitte schickt mir ein Tutorial oder etwas ähnliches dazu.
|
All times are GMT +2. The time now is 14:12.
|
|