4

だから、私は自分のプロジェクトにREST APIを持っています

cUrlでAPIにリクエストしようとしています。しかし、Symfony は 301 を返します

ルーティング:

CMContestBundle_api_new:
type: rest
pattern:  /{_locale}/api/contest/new/
defaults: { _controller: CMContestBundle:API:new, _locale: en }
requirements:
    _method: GET

安全

- { path: ^/(en|no|dk|se|es|it|pl)/api/contest/new, role: IS_AUTHENTICATED_ANONYMOUSLY, methods : GET }

カールリクエスト

curl -v -H "Accept: application/json" -H "Content-type: application/json" -X GET  http://localhost/app_dev.php/en/api/contest/new

この URL をブラウザに入力すると、すべて問題ありません。ただし、これがcurlリクエストの場合、301と、リクエストされたURLにリダイレクトするhtmlページが返されます

symfony が正しい応答ではなく 301 を返す理由はありますか?

4

1 に答える 1

0

/@forgottenbas が述べたように、URL の最後に追加する必要があります。ただし、次のようにリダイレクトに従うように-Lスイッチを追加することもできます。curl

curl -v -H -L "Accept: application/json" -H "Content-type: application/json" -X GET  http://localhost/app_dev.php/en/api/contest/new
于 2014-07-12T18:28:49.953 に答える