Php 否';访问控制允许原点';即使来自同一域的其他请求也在工作

Php 否';访问控制允许原点';即使来自同一域的其他请求也在工作,php,cors,Php,Cors,我有一个奇怪的错误,没有“Access Control Allow Origin”标题。我知道我必须给源域(客户端)一些权限才能访问服务器,这与我提出的其他一些请求很好。但当涉及到另一个要调用的函数时,它只表示没有“访问控制允许源”头 我的客户端托管在heroku,服务器托管在godaddy 这是该错误显示时的函数: public function store(Request $request) { $ffSpending = new FriendsFamilySpending();

我有一个奇怪的错误,没有“Access Control Allow Origin”标题。我知道我必须给源域(客户端)一些权限才能访问服务器,这与我提出的其他一些请求很好。但当涉及到另一个要调用的函数时,它只表示没有“访问控制允许源”头

我的客户端托管在heroku,服务器托管在godaddy

这是该错误显示时的函数:

public function store(Request $request)
{

    $ffSpending = new FriendsFamilySpending();
    $ffSpending->user_id = Auth::user()->id;
    $ffSpending->team_id = Auth::user()->student->team_id;
    $ffSpending->management_units = $request->input('management_units');
    $ffSpending->sales_units = $request->input('sales_units');
    $ffSpending->product_units = $request->input('product_units');
    $ffSpending->ip_units = $request->input('ip_units');

    $ffSpendingRules = array(
        'management_units' => 'required',
        'sales_units' => 'required',
        'product_units' => 'required',
        'ip_units' => 'required'
    );

    $ffSpendingValidator = \Validator::make($ffSpending->getAttributes(), $ffSpendingRules);

    if ($ffSpendingValidator->passes()) {


        $team = Team::find($ffSpending->team_id);
        $currentBalance = $this->teamService->checkBalance($team);

        //Baseline costs
        $BASELINE = FriendsFamilySpending::BASELINE;
        //Get Prices for each unit
        $IP_ONE_TIME_COST = OperationalExpensePrice::getPrice(OperationalExpense::IP, $request->input('ip_units'), OperationalExpenseSerie::FF);//one-time IP costs
        $MANAGEMENT = OperationalExpensePrice::getPrice(OperationalExpense::MANAGEMENT, $request->input('management_units'), OperationalExpenseSerie::FF);
        $SALES = OperationalExpensePrice::getPrice(OperationalExpense::SALES, $request->input('sales_units'), OperationalExpenseSerie::FF);
        $PRODUCT = OperationalExpensePrice::getPrice(OperationalExpense::PRODUCT, $request->input('product_units'), OperationalExpenseSerie::FF);

        //Monthly Costs
        $quartlyCosts = $BASELINE + $MANAGEMENT + $SALES + $PRODUCT;

        $newBalance = $currentBalance;
        $workingMoney = $newBalance - $IP_ONE_TIME_COST;

        $minimumMonth = 12; // the minimum amount of time they must be able to afford (Staging Day  = 12 months)
        //Calculate how many months they (team) can survive
        $survivingMonths = 0;
        while ($workingMoney >= $quartlyCosts) {
            $workingMoney = $workingMoney - $quartlyCosts; //deduct monthly costs from the current working money
            $survivingMonths = $survivingMonths + 3; // quartly spending
            if ($survivingMonths > 24) { // team survives the whole staging and deal day
                break;
            }
        }

        // month to minute - Conversation ratio
        $monthToMinute = 6.25; // (75min / 12month) = 6.25min a month
        $totalMinutes = $survivingMonths * $monthToMinute;
        $minMinutes = 75; //the minimum amount of time they must be able to afford

        //Check if team makes it till the deal day
        if ($survivingMonths < $minimumMonth) {
            return response()->json(['message' => 'With your current spending plan, you will not make it to deal day. Please try again with less spending plan. Currently you run out of money after ' . $totalMinutes . ' minutes. You have to survive at least 75 minutes."', 'success' => false, 'status' => 500, 'data' => null]);
        }

        $ffSpendingRes = $this->ffSpendingService->save($ffSpending);
        if ($ffSpendingRes) {
            $this->ffSpendingService->score(Auth::user()->student->team->class_id); // update ff spending scoring
            $this->ffSpendingService->updateTotalScore(Auth::user()->student->team->class_id);

            //Update balance
            $team = Team::find($ffSpending->team_id);
            $this->teamService->updateBalance($team, $workingMoney);


            if ($survivingMonths >= $minimumMonth && $survivingMonths < 24) {
                $survivingMonthsAfterStagingDay = $survivingMonths - $minimumMonth;
                $survivingMonthsAfterStagingDayToMinute = $survivingMonthsAfterStagingDay * $monthToMinute;
                $outOfMoney = new OutOfMoney();
                $outOfMoney->team_id = Auth::user()->student->team_id;
                $outOfMoney->stage = OutOfMoney::$FF_SPENDING;
                $outOfMoney->is_running_out_of_money_on_deal_day = 1;
                $outOfMoney->month = $survivingMonthsAfterStagingDay;
                $outOfMoney->minutes = $survivingMonthsAfterStagingDayToMinute;
                $outOfMoney->monthly_cost = $quartlyCosts;
                $outOfMoney->save();
            } else {
                $outOfMoney = new OutOfMoney();
                $outOfMoney->team_id = Auth::user()->student->team_id;
                $outOfMoney->stage = OutOfMoney::$FF_SPENDING;
                $outOfMoney->is_running_out_of_money_on_deal_day = 0;
                $outOfMoney->monthly_cost = $quartlyCosts;
                $outOfMoney->save();
            }
            return response()->json(['message' => 'Success', 'success' => true, 'status' => 200, 'data' => $ffSpending]);
        } else {
            return response()->json(['message' => 'Error', 'success' => false, 'status' => 500, 'data' => null]);
        }
    } else {
        return response()->json(['message' => 'Validation Failed', 'success' => false, 'status' => 400, 'data' => array('class' => $ffSpendingRules)]);
    }
公共函数存储(请求$Request)
{
$FFExpanding=新朋友家庭待定();
$FFExpensing->user_id=Auth::user()->id;
$FFExpanding->team_id=Auth::user()->student->team_id;
$FFExpanding->management_units=$request->input('management_units');
$FFExpension->sales_units=$request->input('sales_units');
$FFExpension->product_units=$request->input('product_units');
$FFExpanding->ip_units=$request->input('ip_units');
$ffSpendingRules=数组(
“管理单元”=>“必需”,
“销售单位”=>“必需”,
“产品单位”=>“必需”,
“ip_单位”=>“必需”
);
$ffSpendingValidator=\Validator::make($ffSpending->getAttributes(),$ffSpendingRules);
如果($ffSpendingValidator->passes()){
$team=team::find($ffexpanding->team_id);
$currentBalance=$this->teamService->checkBalance($team);
//基线成本
$BASELINE=FriendsFamilySpending::BASELINE;
//获取每个单元的价格
$IP_ONE_TIME_COST=OperationalExpensePrice::getPrice(OperationalExpense::IP,$request->input('IP_units'),OperationalExpenseSerie::FF);//一次性IP成本
$MANAGEMENT=OperationalExpensePrice::getPrice(OperationalExpense::MANAGEMENT,$request->input('MANAGEMENT_units'),OperationalExpenseSerie::FF);
$SALES=OperationalExpensePrice::getPrice(OperationalExpense::SALES,$request->input('SALES_units'),OperationalExpenseSerie::FF);
$PRODUCT=OperationalExpensePrice::getPrice(OperationalExpense::PRODUCT,$request->input('PRODUCT_units'),OperationalExpenseSerie::FF);
//每月费用
$quartlyCosts=$BASELINE+$MANAGEMENT+$SALES+$PRODUCT;
$newBalance=$currentBalance;
$workingMoney=$newBalance-$IP\u一次性成本;
$minimumMonth=12;//他们必须能够负担的最短时间(分段日=12个月)
//计算他们(团队)能活几个月
$survivingMonths=0;
而($workingMoney>=$quartlyCosts){
$workingMoney=$workingMoney-$quartlyCosts;//从当前的营运资金中扣除每月成本
$survivingMonths=$survivingMonths+3;//四分之一支出
如果($survivingMonths>24){//团队在整个阶段和交易日都能生存下来
打破
}
}
//月与分钟的对话比率
$monthtomin=6.25;/(75分钟/12个月)=每月6.25分钟
$totalMinutes=$SurvivingMonthMonts*$MonthToMinutes;
$minMinutes=75;//他们必须能够承受的最短时间
//检查团队是否在交易日前完成交易
if($surviving month<$minimumMonth){
return response()->json(['message'=>'使用您当前的支出计划,您将无法进入交易日。请使用较少的支出计划重试。当前您在“$totalMinutes.”分钟后耗尽资金。您必须至少生存75分钟。“,'success'=>false,'status'=>500,'data'=>null]);
}
$ffSpendingRes=$this->ffSpendingService->save($ffSpending);
如果($ffSpendingRes){
$this->ffSpendingService->score(Auth::user()->student->team->class_id);//更新ff支出得分
$this->ffSpendingService->updateTotalScore(Auth::user()->student->team->class_id);
//更新余额
$team=team::find($ffexpanding->team_id);
$this->teamService->updateBalance($team,$workingMoney);
如果($survivingMonths>=$minimummMonth&&$survivingMonths<24){
$survivingMonthsAfterStagingDay=$survivingments-$minimumMonth;
$survivingMonthsAfterStagingDayToMinute=$survivingMonthsAfterStagingDay*$monthToMinute;
$outOfMoney=新的outOfMoney();
$outOfMoney->team\u id=Auth::user()->student->team\u id;
$outOfMoney->stage=outOfMoney::$FF\u支出;
$outOfMoney->交易日的资金是否用完=1;
$outOfMoney->month=$survivingMonthsAfterStagingDay;
$outOfMoney->minutes=$survivingMonthsAfterStagingDayToMinute;
$outOfMoney->每月成本=$quartlyCosts;
$outOfMoney->save();
}否则{
$outOfMoney=新的outOfMoney();
$outOfMoney->team\u id=Auth::user()->student->team\u id;
$outOfMoney->stage=outOfMoney::$FF\u支出;
$outOfMoney->交易日的资金是否用完=0;
$outOfMoney->每月成本=$quartlyCosts;
$outOfMoney->save();
}
return response()->json(['message'=>'Success','Success'=>true,'status'=>200,'data'=>$ffexpanding]);
}否则{
return response()->json(['message'=>Error','success'=>false,'status'=>500,'data'=>null]);
}
}否则{
return response()->json(['message'=>'验证失败','success'=>false,'status'=>400,'data'=>array('class'=>$ffSpendingRules)]);
}
注意:如果我更改函数并使其简单化,如返回“test”,它将不再显示源访问错误。 我想知道函数是否有任何问题,为什么它不显示实际错误,而是显示cors错误

有什么建议吗?

正在发生的是OR
'allowedMethods' => ['GET', 'POST', 'PUT', 'DELETE', 'ORIGINS']