elitepvpers

elitepvpers (https://www.elitepvpers.com/forum/)
-   .NET Languages (https://www.elitepvpers.com/forum/net-languages/)
-   -   [C#] HttpWebRequest POST multipart [Hilfe] (https://www.elitepvpers.com/forum/net-languages/3191349-c-httpwebrequest-post-multipart-hilfe.html)

EqoTime 03/30/2014 22:43

[C#] HttpWebRequest POST multipart [Hilfe]
 
kann geclosed werden,

gelöst.

'Heaven. 03/30/2014 22:52

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

EqoTime 03/30/2014 22:56

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

'Heaven. 03/30/2014 23:00

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

EqoTime 03/31/2014 08:27

Quote:

Originally Posted by Waka Toa (Post 27697363)
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?

Mostey 03/31/2014 16:39

Wozu das Rad neu erfinden?

[Only registered and activated users can see links. Click Here To Register...] - siehe Antwort von "loop".

[Only registered and activated users can see links. Click Here To Register...] noch als Referenz dazu.

EqoTime 03/31/2014 17:33

[C#] HttpWebRequest POST multipart [Hilfe]
 
Und was ist mit dem webkitformboundary?

Mostey 03/31/2014 18:09

Quote:

Originally Posted by EqoTime (Post 27704350)
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.

EqoTime 03/31/2014 18:18

Quote:

Originally Posted by Mostey (Post 27704876)
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

Mostey 03/31/2014 18:21

Quote:

Originally Posted by EqoTime (Post 27705037)
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)

EqoTime 03/31/2014 18:24

Quote:

Originally Posted by Mostey (Post 27705076)
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 :D


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.

Spoiler:
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]"

[Only registered and activated users can see links. Click Here To Register...]
------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


EqoTime 04/03/2014 16:54

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.

Mostey 04/03/2014 17:56

Quote:

Originally Posted by EqoTime (Post 27705117)
Ok werde mir das dann mal laden, dachte die ist mit in system.net drine :D


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.

Spoiler:
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]"

[Only registered and activated users can see links. Click Here To Register...]
------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 (Post 27737473)
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.

EqoTime 04/03/2014 18:06

ich bekomme bei: HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse();

immer den http 500 fehler.

qkuh 04/03/2014 23:56

Dann ist dein request fehlerhaft.

EqoTime 04/04/2014 06:51

Quote:

Originally Posted by qkuh (Post 27742574)
Dann ist dein request fehlerhaft.


Der fehler kam wegen dem contenttype was gesendet wird. Die response seite hat keinen und er sendet das mit muss das irgendwie weg machen.

qkuh 04/04/2014 07:07

Du musst dir den request ansehen, nicht die Server-Antwort (response)

EqoTime 04/04/2014 07:09

Quote:

Originally Posted by qkuh (Post 27743846)
Du musst dir den request ansehen, nicht die Server-Antwort (response)


Ja die wird ja gesendet, account wird erstellt nur irgendwo ist ein kleiner fehler den muss ich finden :)


All times are GMT +2. The time now is 21:50.

Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.