


Apakah yang perlu saya lakukan jika catatan thinkphp5 tidak mendapat nilai?
pos thinkphp5 tidak boleh mendapatkan nilai kerana TP5 menggunakan fungsi strpos untuk mencari rentetan aplikasi/json dalam nilai jenis kandungan Pengepala Penyelesaiannya adalah untuk menetapkan nilai jenis kandungan Pengepala kepada aplikasi /json Itu sahaja.
Persekitaran pengendalian tutorial ini: sistem Windows 7, ThinkPHP versi 5, komputer Dell G3.
thinkphp5 Apakah yang perlu saya lakukan jika siaran saya tidak mendapat nilai?
Penyelesaian kepada masalah yang ThinkPHP5 tidak dapat menerima parameter Json yang diluluskan oleh Pos klien
Saya sedang mempelajari pembangunan API dalam tempoh ini, dan saya telah mengambil kursus dari Internet dan saya mengikutinya Baru semalam, saya sekali lagi menghadapi situasi di mana pensyarah membiarkan saya menyahpepijat selama setengah hari Masalah yang saya hadapi ialah apabila saya menggunakan Posman untuk menguji antara muka Pos tertentu. tidak kira bagaimana saya menghantar permintaan, ia sentiasa menggesa saya bahawa pengesahan parameter gagal Semasa proses penyahpepijatan saya, Suatu kali, saya menggunakan kaedah menghantar parameter melalui jadual Badan, dan API berfungsi secara ajaib masalah dengan penghantaran Json sebelum ini, jadi saya mencari di seluruh Internet, tetapi tiada penyelesaian [tetapi Dapatkan temui dua mata pengetahuan dan letakkannya di Akhir artikel].
Mengenai masalah dengan TP5, saya tidak mempunyai pilihan selain menyemak kod sumber, jadi saya mengikuti ralat itu sedikit demi sedikit dan akhirnya menemui masalahnya~
Ternyata TP5 menggunakan fungsi strpos untuk mencari rentetan app/json dalam nilai jenis kandungan Pengepala, yang bermaksud bahawa anda mesti menetapkan nilai jenis kandungan Pengepala kepada app/json, jika tidak TP5 tidak akan menganggap bahawa anda telah lulus ia adalah parameter Json dan tetapkan nilai kepada Request::post menjadi kosong.
Perkara di atas menyelesaikan masalah bahawa TP5 tidak boleh menerima parameter Json yang diluluskan oleh Pos klien.
Dua mata pengetahuan:
php data yang jenis kandungannya ialah "application/json" tidak boleh dikenali secara langsung, jadi tatasusunan $_POST kosong. Penyelesaian: Kami hanya perlu menggunakan $GLOBALS['HTTP_RAW_POST_DATA'] untuk mengeluarkan data asal, dan kemudian json_decode [Menggunakan kaedah ini, anda perlu menetapkan nilai always_populate_raw_post_data dalam php.ini kepada Hidup][$HTTP_RAW_POST_DATA, yang mengandungi data asal data POST. Tetapi ini bukan pembolehubah superglobal, untuk menggunakannya dalam fungsi ia mesti diisytiharkan global , atau gunakan $GLOBALS['HTTP_RAW_POST_DATA'] sebaliknya. ];
Anda boleh menggunakan file_get_contents('php://input') dan bukannya kaedah di atas untuk mendapatkan terus parameter Json yang masuk [Apabila saya membaca kod sumber TP5, saya dapati bahawa mereka juga menggunakan kaedah ini untuk mendapatkan nilai awal].
Pembelajaran yang disyorkan: "Tutorial Video thinkPHP"
Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika catatan thinkphp5 tidak mendapat nilai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Penyelesaian kepada ralat yang dilaporkan semasa menggunakan thinkphp5 dalam Pagoda: 1. Buka pelayan Pagoda, pasang sambungan php pathinfo dan dayakannya 2. Konfigurasikan fail ".access" dengan kandungan "RewriteRule ^(.*)$ index.php ?s=/$1 [QSA ,PT,L]”; 3. Dalam pengurusan laman web, hanya dayakan pseudo-static thinkphp.

Penyelesaian untuk penulisan semula url thinkphp5 tidak berfungsi: 1. Semak sama ada modul mod_rewrite.so dimuatkan dalam fail konfigurasi httpd.conf 2. Tukar Tiada dalam AllowOverride None to All 3. Ubah suai fail konfigurasi Apache .htaccess kepada "RewriteRule ^ (.*)$ index.php [L,E=PATH_INFO:$1]" dan simpannya.

Kaedah untuk thinkphp5 untuk mendapatkan URL yang diminta: 1. Gunakan kaedah "$request = Request::instance();" kelas "\think\Request" untuk mendapatkan maklumat URL semasa 2. Gunakan pembantu terbina dalam fungsi "$request-> url()" untuk mendapatkan alamat URL lengkap termasuk nama domain.

catatan thinkphp5 tidak boleh mendapatkan nilai kerana TP5 menggunakan fungsi strpos untuk mencari rentetan app/json dalam nilai jenis kandungan Pengepala.

Bagaimana untuk mengalih keluar ikon bar tajuk thinkphp5: 1. Cari fail favicon.ico di bawah kerangka kerja thinkphp5 awam 2. Padam fail atau pilih gambar lain untuk menamakannya kepada favicon.ico dan gantikan fail favicon.ico yang asal.

Penyelesaian kepada thinkphp5 yang menyebabkan pengawal tidak wujud: 1. Semak sama ada ruang nama dalam pengawal yang sepadan ditulis dengan betul dan tukarkannya ke ruang nama yang betul 2. Buka fail tp yang sepadan dan ubah suai nama kelas;

Cara menanyakan data semalam dalam ThinkPHP5: 1. Buka fail berkaitan ThinkPHP5 2. Tanya data semalam melalui ungkapan "db('table')->whereTime('c_time', 'semalam')->select();" .

Cara menetapkan gesaan ralat dalam thinkphp5: 1. Masukkan folder awam dalam direktori akar projek dan buka fail entri index.php 2. Lihat komen pada suis mod nyahpepijat 3. Laraskan nilai pemalar "APP_DEBUG". kepada benar untuk memaparkan gesaan mesej ralat.
