Rumah hujung hadapan web tutorial js Contoh terperinci pemalam jQuery Mockjax yang mensimulasikan request_jquery Ajax

Contoh terperinci pemalam jQuery Mockjax yang mensimulasikan request_jquery Ajax

May 16, 2016 pm 03:20 PM
permintaan ajax

1. Prinsip

jquery-mockjax digunakan untuk mengejek data pemulangan permintaan ajax bahagian hadapan ke latar belakang.

Prinsipnya sangat mudah

Letakkan titik putus dalam kod js anda di mana anda ingin menghantar permintaan ajax, dan kemudian bandingkan nilai $.ajax.toString() dalam kes [memperkenalkan jquery-mockjax] dan [tanpa memperkenalkan jquery-mockjax] .

Jelas sekali, apabila jquery-mockjax diperkenalkan, perpustakaan olok-olok ini akan menggantikan fungsi ajax yang disediakan oleh jquery. Ini menjadikannya mudah untuk diejek.

Dalam proses pembangunan sebenar, bahagian hadapan dan bahagian belakang merundingkan antara muka bersatu, dan kemudian masing-masing memulakan tugas mereka sendiri. Pada masa ini, saya mempunyai permintaan Ajax sedemikian yang perlu mendapatkan data dari latar belakang:

$.ajax({
url: '/products/'
}).done(function(res) {
$('#result').html(res);
}); 
Salin selepas log masuk

Tetapi perkhidmatan ini mungkin belum dibuat lagi Mungkin lelaki yang membangunkan bahagian belakang (lelaki kacak yang menggunakan PHP, Ruby, .NET, GoldFusion, dll.) telah meninggalkan, atau mungkin dia sibuk dengan perkara lain. Bagaimanapun, apabila permintaan ini dibuat saya tidak mendapat hasil yang saya inginkan, saya hanya mendapat ralat 404 (Tidak Ditemui).

Ini benar-benar teruk, dan desakan tidak berguna. Penguji di sebelah saya mendesak untuk mengujinya, dan saya tidak sabar-sabar untuk melihat keputusan segera. Pada masa ini, anda hanya boleh bergantung pada diri sendiri Salah satu kaedah yang lebih baik adalah untuk mensimulasikan permintaan Ajax Di sini saya menggunakan pemalam jQuery Mockjax.

Alamat: jQuery Mockjax

Ini ialah pemalam jQuery Apabila anda memuat turun dan memetiknya, letakkannya selepas jQuery:

<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body>
<div id="result"></div>
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="vendor/jquery.mockjax.js"></script>
</body>
</html> 
Salin selepas log masuk

Kemudian laksanakan kod untuk mensimulasikan permintaan sebelum kod permintaan, gunakan kaedah $.mockjax() yang disediakan oleh pemalam dan nyatakan buat sementara waktu dua parameter url dan responseText:

$.mockjax({
url: '/products/',
responseText: 'Here you are!'
}); 
Salin selepas log masuk

Ia akan memantau permintaan Ajax dengan URL yang sama dan memintas serta mensimulasikan respons apabila permintaan itu dikeluarkan Nilai responseText ialah kandungan respons yang disimulasikan, supaya program saya dapat dilaksanakan dengan gembira ialah 'Di sini anda berada' Kandungan ini akan dipaparkan dalam div#result. Apabila saya tidak perlu lagi mengejek permintaan itu, saya boleh menggunakan kaedah $.mockjax.clear() untuk mengosongkannya:

$.mockjax.clear();

Setelah pembangunan perkhidmatan latar belakang selesai, saya boleh menggunakan kaedah ini untuk mengosongkan semua permintaan simulasi dan mengalami kesan permintaan sebenar. Jika anda tidak mahu mengosongkan semua permintaan simulasi sekaligus, tetapi sebaliknya menyasarkan permintaan simulasi tertentu, anda boleh memasukkan ID permintaan simulasi dan setiap permintaan simulasi akan mengembalikan nilai ID:

var idOne = $.mockjax({ }),
idTwo = $.mockjax({ });
$.mockjax.clear(idTwo); 
Salin selepas log masuk

Ini mengosongkan permintaan simulasi kedua dan mengekalkan yang pertama.

Memandangkan alamat url permintaan Ajax mesti sepadan dengan url permintaan simulasi, dengan mengandaikan terdapat banyak permintaan pada halaman, ia akan menjadi sangat menyakitkan untuk mensimulasikan setiap permintaan, Nasib baik, parameter url pemalam menyediakan kad bebas * Kaedah:

$.mockjax({
url: '/books/*'
}); 
Salin selepas log masuk

Selain memadankan permintaan dengan alamat url /books/cook, anda juga boleh memadankan permintaan dengan alamat /books/math dan banyak lagi. Anda juga boleh menggunakan ungkapan biasa untuk corak padanan yang lebih kompleks:

$.mockjax({
url: /^\/data\/(cook|math)$/i
}); 
Salin selepas log masuk

Gunakan parameter data pemalam untuk melaksanakan respons simulasi yang berbeza berdasarkan data permintaan yang berbeza:

$.mockjax({
url: '/books/',
data: {
type: 'cook'
},
responseText: 'You want a cook book!'
});
$.mockjax({
url: '/books/',
data: {
type: 'math'
},
responseText: {
"content": "You want a math book!"
}
}); 
Salin selepas log masuk

Walaupun untuk alamat URL yang sama, kandungan respons yang diperoleh adalah berbeza apabila data yang diminta berbeza. Selain rentetan teks biasa, kandungan respons juga boleh menggunakan json
Format rentetan.

Pemalam juga menyediakan objek tetapan parameter lalai $.mockjaxSettings yang tidak dinyatakan akan menggunakan nilai lalai ini:

$.mockjaxSettings = {
logging: true,
status: 200,
statusText: "OK",
responseTime: 500,
isTimeout: false,
throwUnmocked: false,
contentType: 'text/plain',
response: '',
responseText: '',
responseXML: '',
proxy: '',
proxyType: 'GET',
lastModified: null,
etag: '',
headers: {
etag: 'IJF@H#@923uf8023hFO@I#H#',
'content-type' : 'text/plain'
}
}; 
Salin selepas log masuk

Selepas mengubah suai nilai lalai, permintaan simulasi seterusnya akan menggunakan nilai yang diubah suai:

$.mockjaxSettings.contentType = "application/json"; 
Salin selepas log masuk

Hanya nilai lalai ContentType diubah suai di sini.

Di atas menerangkan pengetahuan berkaitan pemalam jQuery Mockjax untuk mensimulasikan permintaan Ajax melalui contoh.

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk melanjutkan tamat masa permintaan Ajax? Bagaimana untuk melanjutkan tamat masa permintaan Ajax? Jan 26, 2024 am 10:09 AM

Bagaimana untuk memanjangkan masa tamat permintaan Ajax? Apabila membuat permintaan rangkaian, kami sering menghadapi situasi di mana kami perlu memproses sejumlah besar data atau pengiraan yang rumit, yang boleh menyebabkan permintaan itu tamat masa dan gagal mengembalikan data seperti biasa. Untuk menyelesaikan masalah ini, kami boleh memastikan bahawa permintaan boleh diselesaikan dengan jayanya dengan memanjangkan masa tamat permintaan Ajax. Berikut akan memperkenalkan beberapa kaedah dan contoh kod khusus untuk memanjangkan masa tamat permintaan Ajax. Apabila membuat permintaan Ajax menggunakan atribut tamat masa, anda boleh menetapkan atribut tamat masa kepada

Berapa lama masa yang diambil untuk permintaan ajax tamat tempoh? Berapa lama masa yang diambil untuk permintaan ajax tamat tempoh? Nov 20, 2023 am 10:29 AM

Permintaan AJAX tidak mempunyai masa tamat tempoh tetap: "JavaScript dan XML Asynchronous" ialah teknologi untuk menghantar permintaan tak segerak pada halaman web, yang menggunakan JavaScript untuk menghantar permintaan ke pelayan dan menerima respons tanpa memuat semula keseluruhan halaman.

Cara menggunakan pengawal untuk mengendalikan permintaan Ajax dalam rangka kerja Yii Cara menggunakan pengawal untuk mengendalikan permintaan Ajax dalam rangka kerja Yii Jul 28, 2023 pm 07:37 PM

Dalam rangka kerja Yii, pengawal memainkan peranan penting dalam memproses permintaan. Selain mengendalikan permintaan halaman biasa, pengawal juga boleh digunakan untuk mengendalikan permintaan Ajax. Artikel ini akan memperkenalkan cara mengendalikan permintaan Ajax dalam rangka kerja Yii dan memberikan contoh kod. Dalam rangka kerja Yii, pemprosesan permintaan Ajax boleh dijalankan melalui langkah-langkah berikut: Langkah pertama ialah mencipta kelas pengawal (Pengawal). Anda boleh mewarisi kelas pengawal asas yiiwebCo yang disediakan oleh rangka kerja Yii

Bagaimana untuk memilih perpustakaan permintaan Ajax yang betul untuk projek anda Bagaimana untuk memilih perpustakaan permintaan Ajax yang betul untuk projek anda Jan 30, 2024 am 08:32 AM

Panduan praktikal: Perpustakaan permintaan Ajax manakah yang sesuai untuk projek anda? Dengan pembangunan berterusan pembangunan bahagian hadapan, Ajax telah menjadi bahagian yang amat diperlukan dalam pembangunan web. Memilih perpustakaan permintaan Ajax yang sesuai untuk projek adalah penting untuk meningkatkan kecekapan pembangunan dan mengoptimumkan pengalaman pengguna. Artikel ini akan memperkenalkan beberapa perpustakaan permintaan Ajax yang biasa digunakan untuk membantu pembaca memilih alat yang sesuai untuk projek mereka sendiri. jQueryAjax Tidak dapat dinafikan bahawa jQuery adalah salah satu perpustakaan JavaScript yang paling popular di luar sana. Ia menyediakan kaya

Alat penting: Fahami apakah perpustakaan permintaan Ajax yang biasa digunakan? Alat penting: Fahami apakah perpustakaan permintaan Ajax yang biasa digunakan? Jan 30, 2024 am 11:00 AM

Keperluan pembangunan: Terokai apakah perpustakaan permintaan Ajax yang biasa digunakan? Dalam pembangunan bahagian hadapan moden, menggunakan Ajax untuk permintaan tak segerak telah menjadi ciri standard, dan memilih perpustakaan permintaan Ajax yang sesuai boleh membolehkan kami mengendalikan permintaan rangkaian dengan lebih cekap, meningkatkan kecekapan pembangunan dan pengalaman pengguna. Artikel ini akan meneroka beberapa perpustakaan permintaan Ajax yang biasa digunakan untuk membantu pembangun memilih alatan yang sesuai untuk projek mereka. jQueryAjax: Sebagai salah satu perpustakaan JavaScript yang paling popular, jQuery menyediakan fungsi permintaan Ajax yang berkuasa.

Bolehkah saya menyesuaikan masa tamat permintaan Ajax? Bolehkah saya menyesuaikan masa tamat permintaan Ajax? Jan 26, 2024 am 11:13 AM

Bolehkah masa tamat permintaan Ajax disesuaikan? Dalam pembangunan web, kami sering menggunakan Ajax untuk melaksanakan permintaan tak segerak untuk memuatkan data secara dinamik dalam halaman. Apabila membuat permintaan Ajax, kadangkala kita perlu mengawal tamat masa permintaan, iaitu, menetapkan had masa, dan memprosesnya jika tiada respons diterima dalam masa yang ditetapkan. Jadi, bolehkah masa tamat permintaan Ajax disesuaikan? Artikel ini akan memperkenalkan masalah ini secara terperinci dan memberikan contoh kod khusus. Menggunakan fungsi Ajax jQuery

Apakah yang menyebabkan permintaan Ajax tamat masa? Apakah yang menyebabkan permintaan Ajax tamat masa? Jan 26, 2024 am 10:53 AM

Dalam keadaan apakah permintaan Ajax akan tamat tempoh? Dengan pembangunan aplikasi Web, teknologi Ajax (Asynchronous JavaScript dan XML) telah menjadi bahagian penting dalam pembangunan Web. Melalui Ajax, kami boleh mendapatkan data daripada pelayan dan mengemas kini kandungan halaman web secara dinamik tanpa menyegarkan keseluruhan halaman. Walau bagaimanapun, apabila menghantar permintaan menggunakan Ajax, kadangkala permintaan itu tamat tempoh. Jadi, dalam keadaan apakah permintaan Ajax akan tamat tempoh?

Bagaimana untuk menetapkan tamat masa untuk permintaan Ajax? Bagaimana untuk menetapkan tamat masa untuk permintaan Ajax? Jan 26, 2024 am 09:23 AM

Bagaimana untuk menetapkan masa tamat permintaan Ajax? Perlu contoh kod khusus Dengan pembangunan aplikasi Internet, Ajax telah menjadi bahagian yang sangat diperlukan dalam pembangunan Web. Apabila menghantar permintaan Ajax, kadangkala kita perlu mengehadkan masa tamat tempoh permintaan untuk mengelakkan permintaan daripada terlalu lama, mengakibatkan pengalaman pengguna yang buruk atau pelayar terhenti. Artikel ini akan memperkenalkan secara terperinci cara menetapkan masa tamat permintaan Ajax dan memberikan contoh kod khusus. Menetapkan masa tamat permintaan Ajax terutamanya memerlukan XMLHttpRequest

See all articles