Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yii2
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
PSDI Army
yii2
Commits
9f09bb76
Commit
9f09bb76
authored
Nov 21, 2014
by
Nobuo Kihara
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
docs/guide-ja/runtime-responses.md - WIP [ci skip]
parent
e3117ce1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
35 additions
and
36 deletions
+35
-36
runtime-responses.md
docs/guide-ja/runtime-responses.md
+35
-36
No files found.
docs/guide-ja/runtime-responses.md
View file @
9f09bb76
Responses
レスポンス
=========
=========
=
When an application finishes handling a
[
request
](
runtime-requests.md
)
, it generates a
[
[yii\web\Response|response
]
] object
アプリケーションは
[
リクエスト
](
runtime-requests.md
)
の処理を完了すると、
[
[yii\web\Response|レスポンス
]
] オブジェクトを生成して、
and sends it to the end user. The response object contains information such as the HTTP status code, HTTP headers and body.
エンドユーザに送信します。レスポンスオブジェクトは、HTTP ステータスコード、HTTP ヘッダ、HTTP ボディなどの情報を含みます。
The ultimate goal of Web application development is essentially to build such response objects upon various requests.
ウェブアプリケーション開発の最終的な目的は、本質的には、さまざまなリクエストに対してそのようなレスポンスオブジェクトを
作成することにあります。
In most cases you should mainly deal with the
`response`
[
application component
](
structure-application-components.md
)
ほとんどの場合は、主として
`response`
[
アプリケーションコンポーネント
](
structure-application-components.md
)
を使用すべきです。
which is an instance of
[
[yii\web\Response
]
], by default. However, Yii also allows you to create your own response
このコンポーネントは、既定では、
[
[yii\web\Response
]
] のインスタンスです。しかしながら、Yii は、以下で説明するように、
objects and send them to end users as we will explain in the following.
あなた自身のレスポンスオブジェクトを作成してエンドユーザに送信することも許容しています。
In this section, we will describe how to compose and send responses to end users.
この節では、レスポンスを構成してエンドユーザに送信する方法を説明します。
##
Status Code
<a name="status-code"></a>
##
ステータスコード
<a name="status-code"></a>
One of the first things you would do when building a response is to state whether the request is successfully handled.
レスポンスを作成するときに最初にすることの一つは、リクエストが成功裏に処理されたかどうかを記述することです。そのためには、
This is done by setting the
[
[yii\web\Response::statusCode
]
] property which can take one of the valid
[
[yii\web\Response::statusCode
]
] プロパティに有効な
[
HTTP ステータスコード
](
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
)
[
HTTP status codes
](
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
)
. For example, to indicate the request
の一つを設定します。例えば、下記のように、リクエストの処理が成功したことを示すために、ステータスコードを 200 に設定します。
is successfully handled, you may set the status code to be 200, like the following:
```
php
```
php
Yii
::
$app
->
response
->
statusCode
=
200
;
Yii
::
$app
->
response
->
statusCode
=
200
;
```
```
However, in most cases you do not need to explicitly set the status code. This is because the default value
しかしながら、たいていの場合、ステータスコードを明示的に設定する必要はありません。これは、
[
[yii\web\Response::statusCode
]
]
of
[
[yii\web\Response::statusCode
]
] is 200. And if you want to indicate the request is unsuccessful, you may
の既定値が 200 であるからです。そして、リクエストが失敗したことを示したいときは、下記のように、適切な HTTP 例外を投げることが出来ます。
throw an appropriate HTTP exception like the following:
```
php
```
php
throw
new
\yii\web\NotFoundHttpException
;
throw
new
\yii\web\NotFoundHttpException
;
```
```
When the
[
error handler
](
runtime-handling-errors.md
)
catches an exception, it will extract the status code
[
エラーハンドラ
](
runtime-handling-errors.md
)
は、例外をキャッチすると、例外からステータスコードを抽出してレスポンスに割り当てます。
from the exception and assign it to the response. For the
[
[yii\web\NotFoundHttpException
]
] above, it is
上記の
[
[yii\web\NotFoundHttpException
]
] の場合は、HTTP ステータス 404 と関連付けられています。
associated with the HTTP status 404. The following HTTP exceptions are predefined in Yii:
次の HTTP 例外が Yii によって事前定義されています。
*
[
[yii\web\BadRequestHttpException
]
]:
status code 400.
*
[
[yii\web\BadRequestHttpException
]
]:
ステータスコード 400
*
[
[yii\web\ConflictHttpException
]
]:
status code 409.
*
[
[yii\web\ConflictHttpException
]
]:
ステータスコード 409
*
[
[yii\web\ForbiddenHttpException
]
]:
status code 403.
*
[
[yii\web\ForbiddenHttpException
]
]:
ステータスコード 403
*
[
[yii\web\GoneHttpException
]
]:
status code 410.
*
[
[yii\web\GoneHttpException
]
]:
ステータスコード 410
*
[
[yii\web\MethodNotAllowedHttpException
]
]:
status code 405.
*
[
[yii\web\MethodNotAllowedHttpException
]
]:
ステータスコード 405
*
[
[yii\web\NotAcceptableHttpException
]
]:
status code 406.
*
[
[yii\web\NotAcceptableHttpException
]
]:
ステータスコード 406
*
[
[yii\web\NotFoundHttpException
]
]:
status code 404.
*
[
[yii\web\NotFoundHttpException
]
]:
ステータスコード 404
*
[
[yii\web\ServerErrorHttpException
]
]:
status code 500.
*
[
[yii\web\ServerErrorHttpException
]
]:
ステータスコード 500
*
[
[yii\web\TooManyRequestsHttpException
]
]:
status code 429.
*
[
[yii\web\TooManyRequestsHttpException
]
]:
ステータスコード 429
*
[
[yii\web\UnauthorizedHttpException
]
]:
status code 401.
*
[
[yii\web\UnauthorizedHttpException
]
]:
ステータスコード 401
*
[
[yii\web\UnsupportedMediaTypeHttpException
]
]:
status code 415.
*
[
[yii\web\UnsupportedMediaTypeHttpException
]
]:
ステータスコード 415
If the exception that you want to throw is not among the above list, you may create one by extending
投げたい例外が上記のリストに無い場合は、
[
[yii\web\HttpException
]
] から拡張したものを作成することが出来ます。
from
[
[yii\web\HttpException
]
], or directly throw it with a status code, for example,
あるいは、ステータスコードを指定して
[
[yii\web\HttpException
]
] を直接に投げることも出来ます。例えば、
```
php
```
php
throw
new
\yii\web\HttpException
(
402
);
throw
new
\yii\web\HttpException
(
402
);
```
```
## HTTP
Headers
<a name="http-headers"></a>
## HTTP
ヘッダ
<a name="http-headers"></a>
You can send HTTP headers by manipulating the
[
[yii\web\Response::headers|header collection
]
] in the
`response`
component.
You can send HTTP headers by manipulating the
[
[yii\web\Response::headers|header collection
]
] in the
`response`
component.
For example,
For example,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment