2017-02-22 146 views
0

我只是無法檢索我的查詢字符串部分中的數據。使用laravel無法「獲取」數據獲取ajax請求

我已經在我的網站中使用AJAX請求來異步實現各種各樣的任務,並且沒有這種問題。

路線

Route::get('/mensagem/enviar_mensagem', [ 'as' => 'mensagem.enviar_mensagem', 'uses' => '[email protected]_mensagem']); 

測試網址:

http://mydomain.com.br/mensagem/[email protected] 

我的操作方法:

public function enviar_mensagem(Request $request) 
{ 
    $para = $request->get('para'); 
    //$para = $_GET['para']; I get an undefined index error 
    echo $para; //always empty string! 
} 
+0

事實證明,這是一個Ngnix配置問題。它忽略了我的查詢字符串。 –

回答

0

您需要使用input。像這樣:

另外,對於測試,returnecho

public function enviar_mensagem(Request $request) 
{ 
    $para = $request->input('para');  
    return $para; 
} 

並引發了我的好奇心,哪些呢return $request->all()回報呢?

-1

使用request對象的路線的方法來訪問GET參數

public function enviar_mensagem(Request $request) 
{ 
    $para = $request->route('para'); 

    echo $para; 
} 
+0

不,它不起作用。 –

0

那麼,提供的代碼似乎是正確的。確保你的use \Illuminate\Http\Request。此代碼

Route::get('/mensagem/enviar_mensagem', function(\Illuminate\Http\Request $request) { 

    return $request->para; 
// return $request->get('para'); // also works 

}); 

回報[email protected]按要求http://your-site.app/mensagem/[email protected]

+0

我有「使用\ Illuminate \ Http \ Request」。我也嘗試在我的動作參數列表中使用「\ Illuminate \ Http \ Request $ request」,但沒有任何內容。 $ request-> para似乎返回空字符串。 –

0

我複製粘貼你的代碼,這兩部作品:

$para = $request->get('para'); 
$para = $_GET['para']; 
//$para = $_GET['para']; I get an undefined index error 

你確定Web服務器是妥善處理HTTP請求? https://laravel.com/docs/5.4#web-server-configuration

+0

也許這有效:/index.php/mensagem/[email protected] –

0

你可以用下面的代碼試試:

use Request; 

class xyzController { 
    public function enviar_mensagem() 
    { 
     $para = Request::all(); 
     echo $para['para']; 
    } 

}

0

首先,您需要更改也添加此

Route::get('/mensagem/enviar_mensagem/{para}', 
[ 'as' => 'mensagem.enviar_mensagem', 'uses' => 
'[email protected]_mensagem']); 

的路線和之後,在控制器

public function enviar_mensagem($para){ 
    return var_dump($para); 
}