@@ -14,7 +14,7 @@ class Request
14
14
15
15
private array $ data = [];
16
16
17
- private bool $ jsonData = false ;
17
+ private bool $ rawData = false ;
18
18
19
19
private bool $ multipartFormData = false ;
20
20
@@ -52,12 +52,25 @@ public static function create(array $data): self
52
52
->all ();
53
53
}
54
54
55
+ if (!empty ($ data ['dataUrlEncode ' ])) {
56
+ $ request ->data = array_merge ($ request ->data , self ::parseData ($ data ['dataUrlEncode ' ]));
57
+ }
58
+
59
+ if (!empty ($ data ['rawData ' ])) {
60
+ if (count ($ data ['rawData ' ]) === 1 && empty ($ data ['data ' ]) && empty ($ data ['dataUrlEncode ' ])) {
61
+ $ request ->data = $ data ['rawData ' ];
62
+ $ request ->rawData = true ;
63
+ } else {
64
+ $ request ->data = array_merge ($ request ->data , self ::parseData ($ data ['rawData ' ]));
65
+ }
66
+ }
67
+
55
68
if (!empty ($ data ['data ' ])) {
56
69
if (count ($ data ['data ' ]) === 1 && Str::startsWith ($ data ['data ' ][0 ], '{ ' )) {
57
70
$ request ->data = $ data ['data ' ];
58
- $ request ->jsonData = true ;
71
+ $ request ->rawData = true ;
59
72
} else {
60
- $ request ->data = self ::parseData ($ data ['data ' ]);
73
+ $ request ->data = array_merge ( $ request -> data , self ::parseData ($ data ['data ' ]) );
61
74
}
62
75
}
63
76
@@ -66,11 +79,7 @@ public static function create(array $data): self
66
79
$ request ->multipartFormData = true ;
67
80
}
68
81
69
- if (!empty ($ data ['dataUrlEncode ' ])) {
70
- $ request ->data = self ::parseData ($ data ['dataUrlEncode ' ]);
71
- }
72
-
73
- if (is_null ($ data ['method ' ]) && (!empty ($ data ['data ' ]) || !empty ($ data ['fields ' ]))) {
82
+ if (is_null ($ data ['method ' ]) && (!empty ($ data ['rawData ' ]) || !empty ($ data ['data ' ]) || !empty ($ data ['fields ' ]))) {
74
83
$ request ->method = 'POST ' ;
75
84
}
76
85
@@ -114,9 +123,9 @@ public function headers(): array
114
123
return $ this ->headers ;
115
124
}
116
125
117
- public function isJsonData (): bool
126
+ public function isRawData (): bool
118
127
{
119
- return $ this ->jsonData ;
128
+ return $ this ->rawData ;
120
129
}
121
130
122
131
public function method (): string
0 commit comments