راکت
حل شده

مشکل رسپانس فارسی در api لاراول

2 پاسخ

سلام من وقتی متن فارسی رو در لاراول برمیگردونم خروجیش مشکل داره،
و به صورت زیر هست :

{"data":{"message":"\u0633\u0644\u0627\u0645 \u0628\u0631 \u062a\u0648"},"status":0}

راه حل چی هست ؟

ثبت پرسش جدید

پاسخ‌ها

2
eMBi
eMBi
@bahadori.embi

تخصص: برنامه نویس

بهترین پاسخ

@drcode.ir
مربوط به این موارد نبود،

رسپانس ها رو به صورت زیر ارسال کردم مشکل برطرف شد

return response()->json(['message' => 'matne farsi'], 200, [], JSON_UNESCAPED_UNICODE);

برای Api resource هم فایل vendor\laravel\framework\src\Illuminate\Http\JsonResponse.php رو به صورت زیر ویرایش کردم

public function __construct($data = null, $status = 200, $headers = [], $options = 0)
    {
        $this->encodingOptions = $options;

        parent::__construct($data, $status, $headers);
    }

به

public function __construct($data = null, $status = 200, $headers = [], $options = 0)
    {
        $options = JSON_UNESCAPED_UNICODE;
        $this->encodingOptions = $options;

        parent::__construct($data, $status, $headers);
    }

اینجوری دیگه نیازی هم نبود که به response()->json اون قطعه کد اضافه بشه

محمد صادقیان
محمد صادقیان
@drcode.ir

تخصص: برنامه نویس وب - فریم ورک Laravel

این مشکل معمولا موقع ذخیره اطلاعات تو دیتابیس و بازخوانیش پیش میاد ولی نمی دونم دقیق این مورد کجا برای شما پیش اومده.
2 روش زیر رو تست کنید ولی مراحل کارتون رو دقیق بفرمایید بهتر میشه راهنمایی کرد :
json_decode

urldecode

این 2 تابع بالا می تونن مشکل رو رفع کنن.

شاید پاسخ شما همین‌جا باشد

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

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