บทความนี้อธิบายวิธีการส่งพารามิเตอร์ผ่านตัวข้อความใน AngularJs ตามคำขอโพสต์ แบ่งปันสำหรับการอ้างอิงของคุณดังนี้:
ใน AngularJS, $ http ผ่านพารามิเตอร์ในตัวข้อความเป็นโพสต์ จำเป็นต้องมีการปรับเปลี่ยนต่อไปนี้เพื่อให้แน่ใจว่าความถูกต้องของพารามิเตอร์ที่ส่งผ่านโดยตัวข้อความ
1. ตั้งค่าเมื่อประกาศใบสมัคร:
var httppost = ฟังก์ชั่น ($ httpprovider) { / ************************************************************************************************************************* $ httpprovider.defaults.headers.post ['content-type'] = 'แอปพลิเคชัน/x-www-form-urlencoded; charset = utf-8'; / * * workhorse; แปลงวัตถุให้เป็นอนุกรม X-WWW-FORM-URLENCODED * @param {Object} obj * @return {String} */ var param = function (obj) {var query = '', ชื่อ, ค่า, fullSubName, ชื่อย่อย, subvalue, innerObj, i; สำหรับ (ชื่อใน obj) {value = obj [ชื่อ]; if (ค่าอินสแตนซ์ของอาร์เรย์) {สำหรับ (i = 0; i <value.length; ++ i) {subvalue = value [i]; fullSubName = name + '[' + i + ']'; innerObj = {}; innerobj [fullsubname] = subvalue; แบบสอบถาม + = param (innerobj) + '&'; }} อื่นถ้า (ค่าอินสแตนซ์ของค่า) {สำหรับ (ชื่อย่อยในค่า) {subvalue = value [subName]; fullsubname = name + '[' + subname + ']'; innerObj = {}; innerobj [fullsubname] = subvalue; แบบสอบถาม + = param (innerobj) + '&'; }} อื่นถ้า (ค่า! == undefined && value! == null) query + = encodeuricomponent (ชื่อ) + '=' + encodeuricomponent (value) + '&'; } return query.length? query.substr (0, query.length - 1): Query; - // แทนที่ $ http transformrequest เริ่มต้นของบริการ $ httpprovider.defaults.transformrequest = [ฟังก์ชั่น (ข้อมูล) {return angular.isobject (data) && string (data)! == '[ไฟล์วัตถุ]'? param (data): ข้อมูล; }];}; var ngapp = angular.module ('wtapp', ['ngcookies'], httppost);2. โทร $ http โพสต์
$ http ({method: 'post', url: 'getData.ashx', params: {id: '1002'}, // params เป็นพารามิเตอร์ของข้อมูล URL: {keyname: 'Qubernet'} // เป็นพารามิเตอร์ร่างกายข้อความ}, ฟังก์ชัน (ข้อมูล) {});ฉันหวังว่าบทความนี้จะเป็นประโยชน์กับการเขียนโปรแกรม AngularJS ของทุกคน