heather
5 سال پیش توسط heather مطرح شد
8 پاسخ

مشکل در برگرداندن اطلاعات به وسیله ی axios

سلام دوستان....
من یک مشکلی دارم .وقتی inspect می گیرم تا responce اطلاعات و ببینم کدهای html بهم نشون میده!یعنی وقتی response.data رو لاگ میگیرم.

Route::resource('users', 'UserController');

    public function index()
    {
        return User::orderBy('created_at','desc')->paginate(20);
    }

        mounted() {
            //console.log('Component mounted.')
            axios.get('/users')
                 .then((response) => console.log(response));
                .catch((error) => console.log(error));
        }

ثبت پرسش جدید
سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 5 سال پیش آپدیت شد
0

فکر کنم منظورتون جیسون نمیگیری درسته؟
چندین راه هست یکیش هلپر فاکنش لاراول

return $user->toJson();

یا از جیسون اینکد پی اچ پی

json_encode($users);

اگر اشتباه متوجه شدم بگو تا راه حل مناسبی بهت پیشنهاد کنم


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

سلام ممنون از جوابتون
@juza66
کدم رو به این تغییر دادم ولی همون قبلی بود یه نگاه به data بکنین inspect گرفتم:

return User::orderBy('created_at','desc')->paginate(20)->toJson();

{data: "<!DOCTYPE html>↵<html lang="en">↵↵<head>↵↵  <meta …ipt src="/js/app.js"></script>↵↵</body>↵↵</html>↵", status: 200, statusText: "OK", headers: {…}, config: {…}, …}data: "<!DOCTYPE html>↵<html lang="en">↵↵<head>↵↵  <meta "status: 200statusText: "OK"headers: {cache-control: "no-cache, private", connection: "close", content-type: "application/json", date: "Tue, 11 Feb 2020 19:04:32 GMT, Tue, 11 Feb 2020 19:04:32 GMT", host: "localhost:8000", …}config: {url: "/users", method: "get", headers: {…}, transformRequest: Array(1), transformResponse: Array(1), …}request: XMLHttpRequest {readyState: 4, timeout: 0, withCredentials: false, upload: XMLHttpRequestUpload, onreadystatechange: ƒ, …}__proto__: Object

سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 5 سال پیش مطرح شد
0

دات دیتا بذار بعد رسپانس

response.data

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

سلام
@juza66
من اینکارم قبلا کرده بودم ببینید وقتی لاگ می گیرم اینا رو تحویلم میده!روت رو هم عوض کردم ولی همین بود:
من نمیدونم کجا رو اخه اشتباه کردم!اطلاعات رو به صورت ajax به وسیله ی axios دریافت کردم حتی تبدیل به json هم کردم بعد تو کاممپونتم می خوام لاگ بگیرم این اطلاعاتو کد html تحویلم ممیده!

<!DOCTYPE html>
<html lang="en">

<head>

  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  <meta name="description" content="">
  <meta name="author" content="">
  <meta name="csrf-token" content="SMYBBcGHvd3gj9LxuG6wAbmkKae1Nt5TH2zSbQkq">
  <title>SB Admin 2 - Dashboard</title>

  <!-- Custom fonts for this template-->
  <link href="vendor/fontawesome-free/css/all.min.css" rel="stylesheet" type="text/css">
  <link href="https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i" rel="stylesheet">

  <link href="/css/app.css" rel="stylesheet">

</head>
<body id="page-top">
 <!--for use vue.js you need create div by id=app => vue instance and vue components el:#app--> 
<div id="app">
  <!-- Page Wrapper -->
  <div id="wrapper">

    <!-- Sidebar -->
    <ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">

      <!-- Sidebar - Brand -->
      <a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
        <div class="sidebar-brand-icon rotate-n-15">
          <i class="fas fa-laugh-wink"></i>
        </div>
        <div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
      </a>

      <!-- Divider -->
      <hr class="sidebar-divider my-0">

      <!-- Nav Item - Dashboard -->
      <li class="nav-item">
        <!--all spa link or <a> tags must be change to <router-link to="x"></router-link>-->
        <router-link class="nav-link" to="/dashboard">
          <i class="fas fa-fw fa-tachometer-alt"></i>
          <span>Dashboard</span>
        </router-link>
      </li>
      <!-- Divider -->
      <hr class="sidebar-divider">

      <!-- Heading -->
      <div class="sidebar-heading">
        User accounts
      </div>

و بقیه ی کدهای htmll.!


coarad supp
تخصص : برنامه نویس لاراول
@coaradsupp 5 سال پیش مطرح شد
0

احتمالا میدلویر auth روی روتتون فعال نیس؟ که ریدایرکت بشین به یه صفحه دیگه؟ حس میکنم دارین ریدایرکت میشین


heather
تخصص : برنامه نویس بک اند
@heather 5 سال پیش آپدیت شد
0

@coaradsupp
سلام...
نه فعال نیست...نمیدونم کجا رو اشتباه کنم اینجوری میشه!تا حالا اینو ندیده بودم..


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

سلام...
ببخشید من روتی که اطلاعاتو میگیره رو به روت api تغییر دادم درست شد! ولی دلیلش و نمیدونم کسی از شما همچین تجربه ای داره؟چرا وقتی روتم معمولی کدهای html بر می گردونه و چرا وقتی روتم api شده درست کار می کنه؟
من داخل کامپونتم از پکیج Vform هم استفاده کردم نمیدونم ربطی داره یا نه.
@hesammousavi
@ali.bayat
@juza66


حسین مولوی
تخصص : back-end developer
@ho3einmolavi 5 سال پیش مطرح شد
0

سلام وقتی از web.php استفاده میکنی معمولا یه صفحه رو redirect میکنه و کد html نشون میده و نمیشه با axios بشون درخواست داد
@heather


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

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