@@ -109,7 +109,7 @@ require __DIR__ . '/vendor/autoload.php';
109
109
110
110
$http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterface $request) {
111
111
return new React\Http\Message\Response(
112
- 200 ,
112
+ React\Http\Message\Response::STATUS_OK ,
113
113
array(
114
114
'Content-Type' => 'text/plain'
115
115
),
@@ -735,7 +735,7 @@ object and expects a [response](#server-response) object in return:
735
735
``` php
736
736
$http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterface $request) {
737
737
return new React\Http\Message\Response(
738
- 200 ,
738
+ React\Http\Message\Response::STATUS_OK ,
739
739
array(
740
740
'Content-Type' => 'text/plain'
741
741
),
@@ -953,7 +953,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
953
953
$body .= "The requested path is: " . $request->getUri()->getPath();
954
954
955
955
return new React\Http\Message\Response(
956
- 200 ,
956
+ React\Http\Message\Response::STATUS_OK ,
957
957
array(
958
958
'Content-Type' => 'text/plain'
959
959
),
@@ -995,7 +995,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
995
995
$body = "Your IP is: " . $request->getServerParams()['REMOTE_ADDR'];
996
996
997
997
return new React\Http\Message\Response(
998
- 200 ,
998
+ React\Http\Message\Response::STATUS_OK ,
999
999
array(
1000
1000
'Content-Type' => 'text/plain'
1001
1001
),
@@ -1027,7 +1027,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
1027
1027
}
1028
1028
1029
1029
return new React\Http\Message\Response(
1030
- 200 ,
1030
+ React\Http\Message\Response::STATUS_OK ,
1031
1031
array(
1032
1032
'Content-Type' => 'text/html'
1033
1033
),
@@ -1074,7 +1074,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
1074
1074
$name = $request->getParsedBody()['name'] ?? 'anonymous';
1075
1075
1076
1076
return new React\Http\Message\Response(
1077
- 200 ,
1077
+ React\Http\Message\Response::STATUS_OK ,
1078
1078
array(),
1079
1079
"Hello $name!\n"
1080
1080
);
@@ -1099,7 +1099,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
1099
1099
$name = $data->name ?? 'anonymous';
1100
1100
1101
1101
return new React\Http\Message\Response(
1102
- 200 ,
1102
+ React\Http\Message\Response::STATUS_OK ,
1103
1103
array('Content-Type' => 'application/json'),
1104
1104
json_encode(['message' => "Hello $name!"])
1105
1105
);
@@ -1122,7 +1122,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
1122
1122
$name = isset($files['avatar']) ? $files['avatar']->getClientFilename() : 'nothing';
1123
1123
1124
1124
return new React\Http\Message\Response(
1125
- 200 ,
1125
+ React\Http\Message\Response::STATUS_OK ,
1126
1126
array(),
1127
1127
"Uploaded $name\n"
1128
1128
);
@@ -1205,7 +1205,7 @@ $http = new React\Http\HttpServer(
1205
1205
1206
1206
$body->on('end', function () use ($resolve, & $bytes){
1207
1207
$resolve(new React\Http\Message\Response(
1208
- 200 ,
1208
+ React\Http\Message\Response::STATUS_OK ,
1209
1209
array(
1210
1210
'Content-Type' => 'text/plain'
1211
1211
),
@@ -1216,7 +1216,7 @@ $http = new React\Http\HttpServer(
1216
1216
// an error occures e.g. on invalid chunked encoded data or an unexpected 'end' event
1217
1217
$body->on('error', function (Exception $e) use ($resolve, & $bytes) {
1218
1218
$resolve(new React\Http\Message\Response(
1219
- 400 ,
1219
+ React\Http\Message\Response::STATUS_BAD_REQUEST ,
1220
1220
array(
1221
1221
'Content-Type' => 'text/plain'
1222
1222
),
@@ -1272,7 +1272,7 @@ $http = new React\Http\HttpServer(
1272
1272
$body .= 'This example does not accept chunked transfer encoding.';
1273
1273
1274
1274
return new React\Http\Message\Response(
1275
- 411 ,
1275
+ React\Http\Message\Response::STATUS_LENGTH_REQUIRED ,
1276
1276
array(
1277
1277
'Content-Type' => 'text/plain'
1278
1278
),
@@ -1281,7 +1281,7 @@ $http = new React\Http\HttpServer(
1281
1281
}
1282
1282
1283
1283
return new React\Http\Message\Response(
1284
- 200 ,
1284
+ React\Http\Message\Response::STATUS_OK ,
1285
1285
array(
1286
1286
'Content-Type' => 'text/plain'
1287
1287
),
@@ -1343,7 +1343,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
1343
1343
$body = "Your cookie value is: " . $request->getCookieParams()[$key];
1344
1344
1345
1345
return new React\Http\Message\Response(
1346
- 200 ,
1346
+ React\Http\Message\Response::STATUS_OK ,
1347
1347
array(
1348
1348
'Content-Type' => 'text/plain'
1349
1349
),
@@ -1352,7 +1352,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
1352
1352
}
1353
1353
1354
1354
return new React\Http\Message\Response(
1355
- 200 ,
1355
+ React\Http\Message\Response::STATUS_OK ,
1356
1356
array(
1357
1357
'Content-Type' => 'text/plain',
1358
1358
'Set-Cookie' => urlencode($key) . '=' . urlencode('test;more')
@@ -1410,7 +1410,7 @@ In its most simple form, you can use it like this:
1410
1410
``` php
1411
1411
$http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterface $request) {
1412
1412
return new React\Http\Message\Response(
1413
- 200 ,
1413
+ React\Http\Message\Response::STATUS_OK ,
1414
1414
array(
1415
1415
'Content-Type' => 'text/plain'
1416
1416
),
@@ -1440,7 +1440,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
1440
1440
return new Promise(function ($resolve, $reject) {
1441
1441
Loop::addTimer(1.5, function() use ($resolve) {
1442
1442
$response = new React\Http\Message\Response(
1443
- 200 ,
1443
+ React\Http\Message\Response::STATUS_OK ,
1444
1444
array(
1445
1445
'Content-Type' => 'text/plain'
1446
1446
),
@@ -1487,7 +1487,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
1487
1487
});
1488
1488
1489
1489
return new React\Http\Message\Response(
1490
- 200 ,
1490
+ React\Http\Message\Response::STATUS_OK ,
1491
1491
array(
1492
1492
'Content-Type' => 'text/plain'
1493
1493
),
@@ -1568,7 +1568,7 @@ a `string` response body like this:
1568
1568
``` php
1569
1569
$http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterface $request) {
1570
1570
return new React\Http\Message\Response(
1571
- 200 ,
1571
+ React\Http\Message\Response::STATUS_OK ,
1572
1572
array(
1573
1573
'Content-Type' => 'text/plain'
1574
1574
),
@@ -1593,7 +1593,7 @@ $http = new React\Http\HttpServer(function (Psr\Http\Message\ServerRequestInterf
1593
1593
});
1594
1594
1595
1595
return new React\Http\Message\Response(
1596
- 200 ,
1596
+ React\Http\Message\Response::STATUS_OK ,
1597
1597
array(
1598
1598
'Content-Length' => '13',
1599
1599
'Content-Type' => 'text/plain',
@@ -1663,7 +1663,7 @@ a custom `Server` response header like this:
1663
1663
``` php
1664
1664
$http = new React\Http\HttpServer(function (ServerRequestInterface $request) {
1665
1665
return new React\Http\Message\Response(
1666
- 200 ,
1666
+ React\Http\Message\Response::STATUS_OK ,
1667
1667
array(
1668
1668
'Server' => 'PHP/3'
1669
1669
)
@@ -1678,7 +1678,7 @@ string value like this:
1678
1678
``` php
1679
1679
$http = new React\Http\HttpServer(function (ServerRequestInterface $request) {
1680
1680
return new React\Http\Message\Response(
1681
- 200 ,
1681
+ React\Http\Message\Response::STATUS_OK ,
1682
1682
array(
1683
1683
'Server' => ''
1684
1684
)
@@ -1693,7 +1693,7 @@ like this:
1693
1693
``` php
1694
1694
$http = new React\Http\HttpServer(function (ServerRequestInterface $request) {
1695
1695
return new React\Http\Message\Response(
1696
- 200 ,
1696
+ React\Http\Message\Response::STATUS_OK ,
1697
1697
array(
1698
1698
'Date' => gmdate('D, d M Y H:i:s \G\M\T')
1699
1699
)
@@ -1708,7 +1708,7 @@ like this:
1708
1708
``` php
1709
1709
$http = new React\Http\HttpServer(function (ServerRequestInterface $request) {
1710
1710
return new React\Http\Message\Response(
1711
- 200 ,
1711
+ React\Http\Message\Response::STATUS_OK ,
1712
1712
array(
1713
1713
'Date' => ''
1714
1714
)
@@ -1786,7 +1786,7 @@ encourages [Third-Party Middleware](#third-party-middleware) implementations.
1786
1786
In order to use middleware request handlers, simply pass a list of all
1787
1787
callables as defined above to the [ ` HttpServer ` ] ( #httpserver ) .
1788
1788
The following example adds a middleware request handler that adds the current time to the request as a
1789
- header (` Request-Time ` ) and a final request handler that always returns a 200 code without a body:
1789
+ header (` Request-Time ` ) and a final request handler that always returns a ` 200 OK ` status code without a body:
1790
1790
1791
1791
``` php
1792
1792
$http = new React\Http\HttpServer(
@@ -1795,7 +1795,7 @@ $http = new React\Http\HttpServer(
1795
1795
return $next($request);
1796
1796
},
1797
1797
function (Psr\Http\Message\ServerRequestInterface $request) {
1798
- return new React\Http\Message\Response(200 );
1798
+ return new React\Http\Message\Response(React\Http\Message\Response::STATUS_OK );
1799
1799
}
1800
1800
);
1801
1801
```
@@ -1821,7 +1821,7 @@ $http = new React\Http\HttpServer(
1821
1821
});
1822
1822
},
1823
1823
function (Psr\Http\Message\ServerRequestInterface $request) {
1824
- return new React\Http\Message\Response(200 );
1824
+ return new React\Http\Message\Response(React\Http\Message\Response::STATUS_OK );
1825
1825
}
1826
1826
);
1827
1827
```
@@ -1842,7 +1842,7 @@ $http = new React\Http\HttpServer(
1842
1842
});
1843
1843
return $promise->then(null, function (Exception $e) {
1844
1844
return new React\Http\Message\Response(
1845
- 500 ,
1845
+ React\Http\Message\Response::STATUS_INTERNAL_SERVER_ERROR ,
1846
1846
array(),
1847
1847
'Internal error: ' . $e->getMessage()
1848
1848
);
@@ -1852,7 +1852,7 @@ $http = new React\Http\HttpServer(
1852
1852
if (mt_rand(0, 1) === 1) {
1853
1853
throw new RuntimeException('Database error');
1854
1854
}
1855
- return new React\Http\Message\Response(200 );
1855
+ return new React\Http\Message\Response(React\Http\Message\Response::STATUS_OK );
1856
1856
}
1857
1857
);
1858
1858
```
@@ -2439,7 +2439,7 @@ represent an outgoing server response message.
2439
2439
2440
2440
``` php
2441
2441
$response = new React\Http\Message\Response(
2442
- 200 ,
2442
+ React\Http\Message\Response::STATUS_OK ,
2443
2443
array(
2444
2444
'Content-Type' => 'text/html'
2445
2445
),
@@ -2452,6 +2452,13 @@ This class implements the
2452
2452
which in turn extends the
2453
2453
[ PSR-7 ` MessageInterface ` ] ( https://www.php-fig.org/psr/psr-7/#31-psrhttpmessagemessageinterface ) .
2454
2454
2455
+ On top of this, this class implements the
2456
+ [ PSR-7 Message Util ` StatusCodeInterface ` ] ( https://github.com/php-fig/http-message-util/blob/master/src/StatusCodeInterface.php )
2457
+ which means that most common HTTP status codes are available as class
2458
+ constants with the ` STATUS_* ` prefix. For instance, the ` 200 OK ` and
2459
+ ` 404 Not Found ` status codes can used as ` Response::STATUS_OK ` and
2460
+ ` Response::STATUS_NOT_FOUND ` respectively.
2461
+
2455
2462
> Internally, this implementation builds on top of an existing incoming
2456
2463
response message and only adds required streaming support. This base class is
2457
2464
considered an implementation detail that may change in the future.
@@ -2516,7 +2523,7 @@ $http = new React\Http\HttpServer(
2516
2523
});
2517
2524
$body->on('close', function () use (& $bytes, $resolve) {
2518
2525
$resolve(new React\Http\Message\Response(
2519
- 200 ,
2526
+ React\Http\Message\Response::STATUS_OK ,
2520
2527
[],
2521
2528
"Received $bytes bytes\n"
2522
2529
));
@@ -2653,7 +2660,7 @@ $http = new React\Http\HttpServer(
2653
2660
new React\Http\Middleware\RequestBodyBufferMiddleware(16 * 1024 * 1024), // 16 MiB
2654
2661
function (Psr\Http\Message\ServerRequestInterface $request) {
2655
2662
// The body from $request->getBody() is now fully available without the need to stream it
2656
- return new React\Http\Message\Response(200 );
2663
+ return new React\Http\Message\Response(React\Http\Message\Response::STATUS_OK );
2657
2664
},
2658
2665
);
2659
2666
```
@@ -2700,7 +2707,7 @@ $handler = function (Psr\Http\Message\ServerRequestInterface $request) {
2700
2707
}
2701
2708
2702
2709
return new React\Http\Message\Response(
2703
- 200 ,
2710
+ React\Http\Message\Response::STATUS_OK ,
2704
2711
array(
2705
2712
'Content-Type' => 'text/plain'
2706
2713
),
0 commit comments