Amir fazel
5 سال پیش توسط Amir fazel مطرح شد
4 پاسخ

به دست آوردن یک استرینگ از یو آر ال لارواول

سلام و وقت بخیر

یک لینکی به این صورت داریم:

http://127.0.0.1:8000/paper/?q=10.1002%2F%28sici%291098-2736%28200004%2937%3A4<340%3A%3Aaid-tea4>3.0.co%3B2-d&t=0

می خواستیم همچنین route ایجاد کنیم که اولش این لینک را بشناسه و بعد قسمت "?q=10.1002%2F%28sici%291098-2736%28200004%2937%3A4<340%3A%3Aaid-tea4>3.0.co%3B2-d&t=0" را برامون جدا کند. هر کاری کنیم نشد.

توی قسمت روت این را قرار دادیم ولی ارور 404 می دهد در صورتی Request می کنیم مقدارها را به صورت پارامتر در نظر می گیرد

Route::get('/paper/{link}', function ($link){
    return $link;
});

لطفا راهنمایی کنید.


ثبت پرسش جدید
علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

@fazel1amir2
شما دارید کل آبجکت Request رو میگیرید. برای دریافت همه Query String ها از کد زیر استفاده کنید:

use Illuminate\Http\Request;

Route::get('/paper', function (Request $request) {
    return $request->query();
});

و برای دریافت یک Query String از روش زیر:

use Illuminate\Http\Request;

Route::get('/paper', function (Request $request) {
    return $request->query('q');
});

علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

@fazel1amir2

Route شما همون /paper/ هست و باقی URL هم بهش Query String میگن٬ از طریق کلاس Request لاراول میتونید اون مقادیر رو بدست بیارید.


Amir fazel
@fazel1amir2 5 سال پیش مطرح شد
0

سلام و مرسی

من به این صورت وارد می کنم

Route::get('/paper', function (Request $request) {
    return $request;
});

ولی خروجی را به این صورت می دهد:

{"q":"10.1002\/(sici)1098-2736(200004)37:4<340::aid-tea4>3.0.co;2-d","t":"0"}

می خواهیم دقیقا همان مقدار را دریافت کنیم. اگر جایی را اشتباه نوشتم لطفا اطلاع دهیم ممنون می شویم


Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 5 سال پیش مطرح شد
0

سلام
@fazel1amir2

با $requrest که دوستمون اشاره کردند میتونید با جاوا اسکریپت و تابع split هم میتونید این کار رو انجام بدید
ولی راه اول منطقی تر و بهتر هست


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

@fazel1amir2
شما دارید کل آبجکت Request رو میگیرید. برای دریافت همه Query String ها از کد زیر استفاده کنید:

use Illuminate\Http\Request;

Route::get('/paper', function (Request $request) {
    return $request->query();
});

و برای دریافت یک Query String از روش زیر:

use Illuminate\Http\Request;

Route::get('/paper', function (Request $request) {
    return $request->query('q');
});

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام