0

特定のヘッダー、Cookie、およびフォーム値を使用してリクエストを実行したいと考えています。これが私がやっている方法です:

  import Network.HTTP.Conduit
  import Network.HTTP.Types
  --.......omitted


  configReq r = r { method = methodPost
  , requestHeaders = (requestHeaders r) ++ [
      (DS.fromString "Referer", DS.fromString "https://server...."),
      (DS.fromString "SomeHeader2", DS.fromString "fdsfdsfds")
    ]
  , requestBody = RequestBodyLBS (Aeson.encode $ Map.fromList [("email", "my@mail.com"), ("password", "7890")])
  , secure = True
  , cookieJar = [myCookie]
 }

これはうまくいくようです。しかし、サーバーが返されるため、そうではありません400->"X-Response-Body-Start","Invalid input."電子メールとパスワードが何であれ。これはそれ自体で何かを実行するリクエストではないことに注意してください。これは認証リクエスト (「ログイン」ボタンをクリックしたときに送信するものと同じ) であるため、値emailpasswordフォームの値 (その/loginページと同じ) があります。

フォームの値 emailpasswordがリクエストに含まれていても、それらは別の方法で設定する必要があると思います。つまり、それらは別の場所にある必要がありますrequestBody

今のところ問題は、どこに置く必要があるか、そうでない場合はどこに置くemailpassword ということrequestBodyです。

4

1 に答える 1