質問編集履歴
2
別のオリジンからJSONを書き換えるレスポンスが欲しいです
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
###
|
2
|
-
CORSを潜り抜けてlocalhost:3000(React)からxammpのphp
|
2
|
+
CORSを潜り抜けてlocalhost:3000(React)からxammpのphpにリクエストをして
|
3
|
-
|
3
|
+
クライアント側にあるJSONの中身を書き換えたい
|
4
4
|
###
|
5
5
|
|
6
6
|
CORSを潜り抜けてlocalhost:3000(React)からxammpのphp(localhost:80)にリクエストをするphpとき
|
1
CORSをくぐったと思われていましたがくぐれていなかったのでコードの変更とより具体的な詳細を載せております
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,39 +1,61 @@
|
|
1
1
|
###
|
2
|
-
CORSを潜り抜けてlocalhost:3000(React)からxammpのphpファイルに
|
2
|
+
CORSを潜り抜けてlocalhost:3000(React)からxammpのphpファイルに値を渡したい
|
3
3
|
|
4
|
-
###
|
4
|
+
###
|
5
5
|
|
6
|
-
xamppのほかのファイルはphpは作動しますがどうしてもCORS対策をした
|
7
|
-
hea
|
6
|
+
CORSを潜り抜けてlocalhost:3000(React)からxammpのphp(localhost:80)にリクエストをするphpとき
|
8
|
-
|
7
|
+
上記のエラーが出ます
|
9
8
|
|
10
|
-
```
|
11
|
-
|
9
|
+
CORS対策として
|
10
|
+
PHPファイルに
|
11
|
+
・header('Access-Control-Allow-Origin: http://localhost:3000/');
|
12
|
+
・ header('Access-Control-Allow-Methods: GET, POST, PUT');
|
12
|
-
|
13
|
+
・ header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept');
|
14
|
+
と記述いたしました。
|
15
|
+
ですが未解決です。
|
13
16
|
|
14
|
-
|
17
|
+

|
15
18
|
|
19
|
+
また上記の状態(Networkタグ)の意味が分かっていません
|
16
|
-
|
20
|
+
プリフライトリクエストが成功したが本番のリクエストではじかれたということでしょうか
|
17
21
|
|
18
|
-
Apache/2.4.56 (Win64) OpenSSL/1.1.1t PHP/8.2.4 Server at localhost Port 80
|
19
|
-
|
22
|
+
よろしくお願いいたします。
|
20
23
|
|
21
24
|
### 該当のソースコード
|
22
25
|
|
23
26
|
```PHP
|
27
|
+
|
24
28
|
<?php
|
25
|
-
header(
|
29
|
+
header('Access-Control-Allow-Origin: http://localhost:3000/');
|
30
|
+
header('Access-Control-Allow-Methods: GET, POST, PUT');
|
31
|
+
header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept');
|
32
|
+
|
26
33
|
if($_SERVER['REQUEST_METHOD'] === 'POST') {
|
27
34
|
$raw = file_get_contents('php://input');
|
28
|
-
file_put_contents('../../../players/players_names/src/components/players_list.json', json_encode($raw));
|
35
|
+
file_put_contents('../../../players/players_names/src/components/players_list.json', json_encode($raw)); //JSONの相対パス
|
29
36
|
}
|
37
|
+
|
30
38
|
?>
|
31
39
|
|
32
40
|
```
|
33
41
|
|
34
|
-
|
42
|
+
```JavaScript
|
43
|
+
async function save(players) {
|
35
44
|
|
36
|
-
header
|
45
|
+
const headers = {'Content-Type': 'application/json'};
|
37
|
-
ですがうまくバックエンドとして機能させたいと考えております。
|
38
|
-
よろしくお願いいたします。
|
39
46
|
|
47
|
+
players = reobj;
|
48
|
+
await axios.post("http://localhost:80/players_backend/index.php",
|
49
|
+
players, //playersという値をphpに渡したい
|
50
|
+
{heders:headers}
|
51
|
+
).then((res) => {
|
52
|
+
console.log(res);
|
53
|
+
})
|
54
|
+
.catch((error) => {
|
55
|
+
console.log(error);
|
56
|
+
});
|
57
|
+
}
|
58
|
+
save();
|
59
|
+
```
|
60
|
+
|
61
|
+
|