web-dev-qa-db-ja.com

laravelに戻り、外部URLにリダイレクトします

SMS INDIA HUB APIを使用してワンタイムパスワードをユーザーに送信しようとしています。そのために、URL形式にリダイレクトする必要があります。

http://cloud.smsindiahub.in/vendorsms/pushsms.aspx?user=abc&password=xyz&msisdn=919898xxxxxx&sid=SenderId&msg=test%20message&fl=0&gwid=2

このURLをロードすると、何らかのメッセージが返されます。そのメッセージを受け取る必要があります。

こうやってみた

$url = "http://cloud.smsindiahub.in/vendorsms/pushsms.aspx?user=wwww&password=eee&msisdn=9197xxxxx&sid=yyyyy&msg=rrrrr&fl=0&gwid=2";

return Redirect::intended($url);

しかし、それはそのリンクに向けられていません。 localhostにそのURLをロードしようとします。

またはSMS INDIA HUBを使用してSMSを送信するプラグインはありますか?

誰でも助けることができますか?

30
manoos

このようなURLにリダイレクトできるはずです

return Redirect::to($url);

リダイレクトについては、Laravelのドキュメントをご覧ください。

36
Laurence

$urlでリダイレクトするURLを定義します

次に使用する

return Redirect::away($url);

ビュー内でリダイレクトしたい場合は

return Redirect::to($url);

ここにリダイレクト の詳細を読む

アップデート1:

簡単な例を示します

return Redirect::to('http://www.google.com');

アップデート2:

質問者が同じページに戻りたいので

$triggersms = file_get_contents('http://www.cloud.smsindiahub.in/vendorsms/pushsms.aspx?user=efg&password=abcd&msisdn=9197xxx2&sid=MYID&msg=Hello');
return $triggersms;
18

Laravel 5.xの場合:

return redirect()->away('https://www.google.com');

docs に記載されているとおり:

アプリケーション外のドメインにリダイレクトする必要がある場合があります。追加のURLエンコード、検証、検証なしでRedirectResponseを作成するawayメソッドを呼び出すことで、これを行うことができます。

9
Adam

Laravel 5.xでは、

return redirect()->to($url);
5
sadiq

Redirect::away($url)を使用できます

3
Vishal Wadhawan

また、クラスを追加する

      use Illuminate\Http\RedirectResponse;

そして、このように:

 public function show($id){

    $link = Link::findOrFail($id);  // get data from db table Links

    return new RedirectResponse($link->url);  // and this my external link, 
 }

または -

 return  new RedirectResponse("http://www.google.com?andParams=yourParams"); 

外部リンクの場合、先頭に「http」を含む完全なURL文字列を使用する必要があります。

1
Arthur