2016-09-01 10 views
0

私は現時点でlocalhostで実行しているLaravel5のPHPスクリプトへのリンクに使用するURLに問題があります。私はコントローラ内でリクエストを処理する関数を作成しました。ここに関数があります:アンドロイドのPOSTデータからVolley to Laravel5へ

public function mobile_validator(Request $request) { 
    $method = $request->method(); 
    if($method == 'POST') { 
     $username = $request->username; 
     $password = $request->password; 
     $user = DB::table('users')->get(); 
     foreach($user as $i) { 
      if($username == $i->email and $password == $i->password) { 
       return 'success'; 
      } 
      else { 
       return 'failure'; 
      } 
     } 
    } 

私はroute.phpでルートを作成しました。

Route::get('/mobilevalidator', '[email protected]_validator'); 

これはアンドロイドで私のURLです:私は私のアプリにログインしたとき

private static final String LOGIN_URL = "http://10.0.2.2:8000/mobilevalidator/"; 

は、今では

com.android.volley.timeouterrorエラーが定義する際に正しいURLです表示LaravelのPHPスクリプト?あなたのルートで

答えて

0

あなたはこのルートがGETメソッドを聴いていることを意味

Route::get 

を定義しました。お使いのコントローラでは、あなたのコントローラーが実際には、あなたのルートがあなたのコントローラが唯一

を取得するために聞いているあなたが削除completyできる呼び出すので、ofcourseの起こることは決してありませんPOSTを持っているものを返すされることを意味し

$method = $request->method(); 
if($method == 'POST') { 

を指定しますメソッドのチェック。コントローラーメソッドは、ルートをマップする場合にのみ呼び出すことができます。あなたのアプリでそれらを使用する前に、あなたのルートをテストするために郵便配達員や他のRestClientを使用する

試してください:あなたはまた、POSTをサポートしたい場合は、単に

Route::post(...) 

少しヒントを追加します。また、laravelでWebミドルウェアを削除することを忘れないでください。そうしないと、要求にcsrfトークンを追加する必要があります。

関連する問題