web-dev-qa-db-ja.com

Laravel $ _POSTリクエストにPostmanを使用する方法

Postmanを使用してLaravelアプリに投稿リクエストを送信するにはどうすればよいですか?

通常Laravelにはcsrf_token POST/PUTリクエストで渡す必要があります。 Postmanでこの値を取得して送信するにはどうすればよいですか? オフにすることなく CSRF保護も可能ですか?

13
Hilmanrdn

編集:

ああ待って、質問を読み間違えた。 CSRF保護をオフにせずに実行したいですか? Bharat Geledaが言ったように、トークンのみを返すルートを作成し、_token郵便配達員のフィールド。

ただし、以下のようなCSRF保護からAPI呼び出しを除外し、後で何らかのAPI認証を追加することをお勧めします。

laravelを実行していますか?

Laravel 5.2以降:

5.2以降、CSRFトークンはwebミドルウェアのあるルートでのみ必要です。 webミドルウェアを使用して、APIルートをグループ外に配置します。

詳細については、 documentation の「The Default Routes File」の見出しを参照してください。

Laravel 5.1および5.2:

次のように、VerifyCsrfTokenミドルウェアでCSRF保護を持たないルートを除外できます。

class VerifyCsrfToken extends BaseVerifier
{
    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        'api/*',
    ];
}

詳細については、「CSRF保護からURIを除外する」の見出し documentation を参照してください。

24
Björn

セッションをCookieに保存する場合、Developer Toolsの認証リクエストからCookieを取得できます。

enter image description here

POSTCookieまたはPawリクエストのヘッダーにそのCookieをコピーして貼り付けます。

enter image description here

このアプローチにより、APIテストを現在のセッションに制限できます。

6
Brian Fegter

1.以下の機能を使用して、コントローラーを使用してcsrfトークンを表示する新しいルートを作成できます。 (ルートでGetリクエストを使用)

   public function showToken {
      echo csrf_token(); 

    }

2. postmanの[ボディ]タブを選択し、x-www-form-urlencodedを選択します。
3。トークンをコピーし、_tokenという名前のキーの値として郵便配達員に貼り付けます。
4.URL /エンドポイントで投稿リクエストを実行します

0
james.s