Running to CORS header ‘access-control-allow-origin’ missing issues. Both the client and backend are subdomains. For the client, I use FormData. On Development, it works on localhost
Cors.php
'paths' => ['api/newProspect', 'sanctum/csrf-cookie'],
'allowed_origins' => ['https://internal.com', 'http://internal.com'],
'allowed_methods' => ['GET, POST, PUT, DELETE, PATCH, OPTIONS'],
'allowed_origins_patterns' => [],
'allowed_headers' => ['Content-Type, X-Auth-Token, Authorization, Origin'],
'exposed_headers' => [],
'max_age' => 0,
'supports_credentials' => false,
Kernel.php
protected $middleware = [
\Fruitcake\Cors\HandleCors::class,
// \App\Http\Middleware\TrustHosts::class,
\App\Http\Middleware\CorsMiddleware::class,
\App\Http\Middleware\TrustProxies::class,
\App\Http\Middleware\PreventRequestsDuringMaintenance::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
];
Controller
try {
$response = Http::withHeaders([
'Accept' => 'application/json',
"X-DreamFactory-API-KEY" => env('REACT_APP_API_KEY'),
"Access-Control-Allow-Origin"=> "*",
"Access-Control-Allow-Methods"=>
"GET, POST, PATCH, PUT, DELETE, OPTIONS",
"Access-Control-Allow-Headers"=> "Origin, Content-Type, X-Auth-Token",
"cors-enabled"=> false,
])->withOptions(
[
'Content-Type' => 'application/json',
]
)->post($url, [
"resource" => $data
]);