php мессежийг болгоомжтой нэмнэ үү. PHP AJAX CRUD: MySQL мэдээллийн санд бүртгэл үүсгэх, устгах, засварлах

Эцэст нь би ойлгосон: чи эхнэрээсээ илүү сайн хүнийг олж чадахгүй. Эхнэр олох л үлдлээ

PHP AJAX CRUD: MySQL мэдээллийн санд бүртгэл үүсгэх, устгах, засварлах

Энэ нийтлэлд бид PHP ашиглан MySQL мэдээллийн санд бичлэг нэмэх, засварлах, устгах талаар сурах болно. Бид сервер талын скрипт рүү AJAX хүсэлт илгээдэг JQuery зохицуулагчийг ашигласан. Зохицуулагч нь бичлэгийн жагсаалтыг шинэчилдэг.

Үүсгэх, устгах, засварлах хүсэлтийг илгээх AJAX маягт

Бичлэг нэмэх үед маягт нь өгөгдлийг AJAX хүсэлтээр дамжуулан PHP скрипт рүү илгээдэг. Нэмэлт амжилттай бол оруулгуудын жагсаалтыг дахин ачаална.

CRUD мэдээллийн сангийн асуулгад зориулсан JQuery AJAX функцууд

JQuery AJAX функцэд бид солих тохиолдлуудыг нэмж засварлах, устгах боломжтой. Эдгээр тохиолдлууд нь өгөгдлийн сангийн үйлдлээс хамааран өөр өөр асуулга болон хариултын өгөгдлийн мөрүүдийг үүсгэдэг.

функц showEditBox(id) ( $("#frmAdd").hide(); var currentMessage = $("#message_" + id + ".message-content").html(); var editMarkUp = ""+currentMessage+" SaveCancel"; $("#message_" + id + " .message-content").html(editMarkUp); ) функцийг цуцлахЗасварлах(message,id) ( $("#message_" + id + " .message-content") .html(message) $("#frmAdd").show(функц callCrudAction(action,id) ( $("#loaderIcon").show(); var queryString; switch(action) ( case "add"); : queryString = "action="+action+"&txtmessage="+ $("#txtmessage").val(); завсарлага "edit": queryString = "action="+action+"&message_id="+ id + " &txtmessage; ="+ $("#txtmessage_"+id).val(); завсарлага; "устгах" тохиолдол: queryString = "action="+action+"&message_id="+ id; завсарлага; ) jQuery.ajax(( url: " crud_action.php", өгөгдөл:queryString, төрөл: "POST", амжилт: функц(өгөгдөл)( шилжүүлэгч(үйлдэл) ( "нэмэх" тохиолдол: $("#comment-list-box").append(өгөгдөл); завсарлага ; case "edit": $("#message_" + id + " .message-content").html(өгөгдөл $("#frmAdd").show(); завсарлага; "устгах" тохиолдол: $("#message_"+id).fadeOut(); завсарлага; ) $("#txtmessage").val(""); $("#loaderIcon"). нуух(); ), алдаа: функц ()() )); )

CRUD үйлдлийн PHP скрипт

Дараах код нь мэдээллийн сангийн эсрэг асуулга гүйцэтгэдэг. Энэхүү PHP скрипт нь CRUD үйлдэл хийсний дараа AJAX-ийн хариу үйлдлийн үр дүнд бичлэгүүдийг шинэчилдэг.

require_once("dbcontroller.php"); $db_handle = шинэ DBController(); $action = $_POST["үйлдэл"]; if(!empty($action)) ( switch($action) ( case "add": $result = mysql_query("INSERT INTO comment(message) VALUES("".$_POST["txtmessage"].")" ) if($result)($insert_id = mysql_insert_id(); echo "Устгах " . $_POST["txtmessage"] . " "; ) завсарлага "edit": $result = mysql_query("UPDATE comment set message = "".$_POST["txtmessage"]."" WHERE id=".$_POST["message_id"]); if($result) echo $_POST["txtmessage"]; break; case "delete": if ( !empty($_POST["message_id"])) ( mysql_query("DELETE FROM comment WHERE id=".$_POST["message_id"]); ) break) )

Тойм

Joomla-д анх удаа суурилагдсан мэдэгдлийн систем нь таны апп-д янз бүрийн үйл явдлын талаар хэрэглэгчдэд (эсвэл бүлэг хэрэглэгчдэд) мэдээлэл өгөх боломжийг олгодог. Мэдэгдэлийг хэрэглэгч унших, хянах сонирхолтой байх чухал анхааруулга гэж бодоорой.
Мэдэгдлийг хаа сайгүй үүсгэж болно. Таны бүрэлдэхүүн хэсэг эсвэл залгаасууд болон дараа нь JomSocial мэдэгдлийн систем дотор харагдана.
Энэ заавар нь танд хэрхэн хийхийг харуулах болно, гэхдээ бид ашиглах боломжтой гуравдагч талын бүрэлдэхүүн хэсгийн талаар ойлголтгүй байгаа тул жишээнүүд нь onAfterProfileUpdate үйл явдал дээр өдөөгдөх олон нийтийн залгаас дээр хийгдэх болно.
Хэрэв та энэ үйл явдал дээр өдөөх залгаасыг хэрхэн үүсгэхээ мэдэхгүй байгаа бол бид танд энэ гарын авлагыг шалгахыг санал болгож байна.

Ямар ч байсан өөрийн бүрэлдэхүүн хэсэгт үүнийг хэрэгжүүлж байна

Энэхүү зааварчилгааны тоймд дурдсанчлан бид олон нийтийн залгаас ашиглан мэдэгдэл үүсгэх болно.
Та өөрийн бүрэлдэхүүн хэсэг эсвэл залгаас дотор мэдэгдэл үүсгэхийг хүсэх байх. Дараах заавар нь эдгээр тохиолдлын аль нэгэнд ажиллах болно. Та зөвхөн кодын аль хэсэгт мэдэгдэл үүсгэхийг тодорхойлж, JomSocial Core Libraries файлыг ачааллахад л хангалттай.

_нэг удаа JPATH_ROOT шаардана. "/components/com_community/libraries/core.php" ;

Доор тайлбарласан зааварчилгааг дагаж мөрдвөл таны өргөтгөлийн хувьд ч сайн ажиллах болно

Хөгжлийн орчныг бэлтгэх

1. Бид таныг хэрэглэгч өөрийн профайлаа өөрчлөх үед идэвхжих олон нийтийн төрлийн жишээ залгаасыг аль хэдийн үүсгэсэн гэж таамаглах болно.
Хэрэв үгүй ​​бол та хоосон жишээ залгаасыг -аас татаж аваад Joomla-д суулгаад залгаасыг идэвхжүүлж болно. Үүнийг нэрлэсэн Нийгэмлэг - Мэдэгдлийн жишээ
2. Өгөгдлийн сан руугаа шилжиж, эдгээр хоёр хүснэгтийг хоослоход тэдгээрт ямар ч бүртгэл байхгүй болно.

A) угтварын_нийгмийн_мэдэгдэл
б) угтвар_нийтлэл_мэйл

3. Туршилтын сайт дээрээ дор хаяж хоёр (2) хэрэглэгчтэй байх ба тэдний ID-г мэддэг байх

Joomla-ийн өмнөх хувилбаруудад хэрэглэгчийн ID-ууд үргэлж заасан тооноос (62, 42) эхэлдэг байсан. Joomla 3-т энэ тоо санамсаргүй байх тул бидний туршилтын орчны зураг таны төгсгөлд өөр байх болно.

Анхны мэдэгдэл

ROOT/plugins/community/example дотор байрлах залгаасын php файлыг нээнэ үү.
onAfterProfileUpdate() функц дотроос солино

CNotificationLibrary::add ($cmd, $actor, $target, $subject, $body, $template, $params);

Жишээн дээр харуулсны дагуу notification add api нь 7 параметртэй

  • $cmd - мэдэгдлийн төрөл юм. Та энэ файлаас бүх мэдэгдлийн төрлийг харж болно. ROOT/components/com_community/libraries/notificationtypes.php-г 53-р мөрөнд эсвэл эргэн тойронд нь эхлүүлнэ. Бид system_messaging мэдэгдлийн төрлийг ашиглахыг зөвлөж байна.
  • $actor - тухайн үйлдлийг гүйцэтгэх хүн юм
  • $target - мэдэгдэл хүлээн авах хүн эсвэл бүлэг хүмүүс юм
  • $subject - мэдэгдлийн гарч ирэх цонх болон имэйлийн гарчигийн аль алинд нь мэдэгдлийн сэдэв юм
  • $body - имэйлийн мэдэгдлийн мессежийн үндсэн хэсэг юм
  • $template - хэрэв танд ашиглах тодорхой загвар хэрэгтэй бол эндээс тодорхойлж болно. Үгүй бол энэ параметр хоосон байж болно
  • $params - өөрчлөн тодорхойлсон параметрүүд
  • Энэ бүхнийг мэдсэнийхээ дараа ашиглах хувьсагчаа тодорхойлъё
    Plugin кодоо дараах байдлаар өөрчил:

    $хэрэглэгч = CFactory::getUser(); $cmd = "системийн_мессеж" ; // эхний параметр, үйл ажиллагааны төрөл $actor = $user -> id ; //second param - $actor-ийн ID-г авна $target = "965" ; // гурав дахь парам. Хэн мэдэгдэл хүлээн авах вэ? Манай хөгжүүлэлтийн орчинд түүний админ хэрэглэгч нь 965 id-тэй байдаг. Таны орчинд та өөрийн объект эсвэл олон тооны хэрэглэгчдийн ID-г авахыг хүсэх байх. $subject = "Мэдэгдэлийн сэдэв" ; // Имэйл болон гарч ирэх мэдэгдлийн аль алиных нь сэдэв $body = ; //Имэйл дэх үндсэн мессеж. $template = "" ; // Хэрэв та jomsocial загвар файлыг ашиглах шаардлагатай бол эндээс тодорхойлж болно. $params = шинэ CParameter("" ); // Бид CNotificationLibrary:: add ( $cmd , $actor , $target , $subject , $body , $template , $params ) ангиллыг албан ёсоор тодорхойлохгүйгээр нэмэлт параметрийн объект үүсгэж, түүнд өгөгдөл оноохыг хүсэж байна. ;

    Одоо дурын хэрэглэгчтэй нэвтэрч, профайлын мэдээллийг өөрчил. Юу болсныг харахын тулд мэдээллийн сан руу орцгооё.
    Угтвар_олон нийтийн_мэдэгдлийн хүснэгт рүү шилжиж, шинэ бичлэгийг ажиглаарай

    Prefix_community_mailq хүснэгт рүү шилжиж, шинэ бичлэгийг харна уу

    Баяр хүргэе! - Та имэйл болон дотоод JomSocial мэдэгдлийн системээр илгээсэн анхны өөрийн мэдэгдлээ амжилттай үүсгэлээ.


    Боломжит код Bloat

    Дээрх жишээ нь зүгээр бөгөөд энэ нь ажилладаг, гэхдээ ерөнхийдөө үүнийг ийм байдлаар ашиглахыг зөвлөдөггүй. Үүний оронд ингэж бичиж болно

    $жүжигчин = CFactory::getUser(); $params = шинэ CParameter("" ); CNotificationLibrary:: add ( "system_messaging" , $actor -> "Энэ бол мэдэгдлийн үндсэн мессеж" , "" , $params );

    Энэ нь дээр үзүүлсэн кодтой яг ижил зүйлийг хийхэд илүү цэвэр бөгөөд дагаж мөрдөхөд хялбар юм.

    Тусгай мэдэгдлийн параметрүүд

    Мэдэгдлийн API-г таны нэмэхийг хүссэн параметрүүдээр сунгах боломжтой.
    Эдгээр параметрүүдийг имэйлийн загвар, мэдэгдэл, мэдээжийн хэрэг хэлний файлд шилжүүлж болно.

    $жүжигчин = CFactory::getUser(); $link = "http://www.google.com" ; $params = шинэ CParameter("" ); $params -> set ("жүжигчин" , $actor -> getDisplayName () ); // (жүжигчин) таг болгон ашиглаж болно $params -> set ("actor_url" , "index.php?option=com_community&view=profile&userid=" . $actor -> id ); // (жүжигчин) тагийн холбоос $params -> set ("url" , $link ); //бүх үйл ажиллагааны url. Мэдэгдлийн цонхонд аватар дээр хулганыг гүйлгэхэд ашигладаг. Илгээж буй имэйлд (url) шошго болгон ашиглаж болно. Та $link хувьсагчийг тодорхойлсон эсэхээ шалгаарай:) CNotificationLibrary:: add ( "system_messaging" , $actor -> id , "965" , "Мэдэгдэлийн сэдэв" , "Энэ бол мэдэгдлийн үндсэн мессеж" , "" , $params) ;

    • $params = шинэ CParameter( ); - Бид шинэ params объект үүсгэж, түүнд ангиллыг албан ёсоор тодорхойлохгүйгээр өгөгдөл оноохыг хүсч байна.
    • $params->set("жүжигчин", $actor->getDisplayName()); - Таны мэдэгдэлд үргэлж жүжигчин байх ёстой. Энэ параметрийг загварт (жүжигчин) тэмдэг болгон дамжуулж болно. Мэдэгдлийн цонхонд энэ нь үйлдэл хийх хэрэглэгчийг тодорхойлдог.
    • $params->set("actor_url", "index.php?option=com_community&view=profile&userid=". $actor->id); - Жүжигчний URL нь ихэвчлэн жүжигчний URL байдаг. Мэдэгдэлийн цонхонд энэ нь (жүжигчин) элементийн холбоосыг нэмнэ
    • $params->set("url", $link); - Энэ бол та үргэлж зөв тохируулах ёстой хамгийн чухал параметр юм. Мэдэгдлийн цонхонд энэ параметрийг аватар дүрс дээр ашигладаг. Имэйлийн мэдэгдэлд энэ нь үйл ажиллагаа болсон байршлыг илэрхийлдэг.

    Энэ жишээний хувьд бид буух $link хувьсагчийг тохируулах болно www.google.comИнгэснээр та хэрхэн ажилладагийг харж болно

    Хэлний мөр нэмэх ба параметрүүдийг ашиглах

    Бидний саяхан тохируулсан параметрүүдийг манай хэлний файлд ашиглах боломжтой.
    "Гэж өөрчлөх замаар хэлний түлхүүрүүдийг тодорхойлъё. CNotificationLibrary::add() API

    CNotificationLibrary::add("system_messaging" , $actor -> id , "965" , JText::sprintf("PLG_COMMUNITY_EXAMPLE_SUBJECT" ) , JText::sprintf("PLG_COMMUNITY_EXAMPLE_BODY", $ms");

    Хэлний файл иймэрхүү харагдах ёстой

    PLG_COMMUNITY_EXAMPLE_SUBJECT = "(жүжигчин) шинэчилсэн профайл" PLG_COMMUNITY_EXAMPLE_BODY = "Сайн уу админ \n Энэ бол (жүжигчин) шинэчилсэн профайлыг танд мэдэгдэх имэйл \n\n Хэрэв та Google рүү орохыг хүсвэл энд дарна уу \n a href=" _QQ_" (url)"_QQ_">(url)"

    Энэ жишээнд бид шошго (жүжигчин) болон (url)-ийг ашиглан мэдээлэл, мэдэгдэл, имэйлийн загварт хоёуланд нь өгөгдөл дамжуулах болно. Энэ хэрхэн харагдахыг харцгаая.
    Мэдэгдлийн цонхонд аватар дээр хулганыг гүйлгэн харахдаа (url) параметрийг оруулаад аватар дээрх холбоосыг Google-д нэмнэ үү. Санаатай, учир нь бид ийм болгосон :)


    ]

    Ижил цонхонд, жүжигчний холбоос дээр хулганаа гүйлгэж байх үед. Энэ нь (жүжигчин) үйлдэл хийж буй хэрэглэгчийг цуурайтсан хэсэг бөгөөд (actor_url)" объектыг зөв холбосон эсэхийг анхаарч үзсэн.


    Имэйлийн дараалалд юу болсныг харцгаая


    Эцэст нь эцсийн хэрэглэгч рүү илгээсэн бодит имэйл


    Амжилт
    Өнөөг хүртэл бид мэдэгдлийн цонх, имэйлд амжилттай ашиглагдаж буй гурван (3) параметрийг үүсгэсэн.

  • (жүжигчин) - Үйлдлийг гүйцэтгэж буй хэрэглэгчийн нэрийг буцаана
  • (actor_url) - өгдөг (жүжигчин) шинж чанар
  • (url) - Заавал биш, гэхдээ та үүнийг мэдэгдэлдээ үргэлж оруулах ёстой. Энэ нь бидэнд мэдэгдэж байгаа үйлдлүүдийн гол url юм.
  • Үүнтэй адилаар та "гэж тодорхойлж болно.

    • (зорилтот) - хэрэв танд хэрэгтэй бол
    • (target_url) хэрэв танд хэрэгтэй бол мэдэгдэлдээ оруулна уу.
    • (гарчиг) - Мэдэгдэл үүсгэсэн объектыг илэрхийлэхэд ихэвчлэн ашиглагддаг. Жишээ: "X хэрэглэгч Y цомогт шинэ зураг нийтэлсэн." Y цомгийн нэр энд байна
    • (title_url) - Өмнөхүүдийн нэгэн адил мэдэгдэл үүсгэсэн объектын url.
    • (мессеж) - Энэ параметрийг JomSocial имэйлийн үндсэн хэсэгт мессежийг тохируулах (мөн цуурайлах) хийхэд ашиглаж болно.

    Би Zend програм дээрээ гар утасны аппликейшнд зориулж бага зэрэг API бичиж байна. Гар утасны хөгжүүлэгчдэд хялбар болгохын тулд би Swagger ашигладаг. Одоогоор нэг GET хүсэлтийг эс тооцвол бүх зүйл хэвийн ажиллаж байна.

    Би хэзээ /хэрэглэгч/мессеж/(sessionToken) руу залгах вэ? Хөтөч дээр NumMessages = (numMessages) & pageNr = (pageNr) би хүссэн үр дүнгээ авах боловч Swagger-д энэ хүсэлтийг гүйцэтгэхийг оролдоход зөвхөн sessionToken дамжуулагдана. Би Swagger-д зориулж эдгээр тэмдэглэгээг туршиж үзсэн:

    /** * @SWG\Api(path="/user/messages/(sessionToken)?numMessages=(numMessages)&pageNr=(pageNr)", * @SWG\Operation(* method="GET", * хураангуй=" Мессежийг хуудасласан", * notes="", * type="string", * nickname="getUsermessagesPaged", * authorizations=(), * @SWG\Parameter(* name="sessionToken", * description="Токен"-г авдаг. идэвхтэй хэрэглэгчийн сешнээс", * шаардлагатай=true, * type="string", * paramType="зам", * allowMultiple=true *), * @SWG\Parameter(* name="numMessages", * description=" хуудас дээрх мессежийн тоо (numMessages & pageNr хоёуланг нь тохируулаагүй бол үл хэрэгснэ)", * шаардлагатай=true, * type="string", * paramType="query", * allowMultiple=true *), * @SWG\Parameter (* name="pageNr", * description="хуудасны дугаар (хэрэв хоёуланг нь тохируулаагүй бол тоо Мессеж, хуудасNr-ыг үл тоомсорлодог)), * шаардлагатай=true, * type="string", * paramType="query", * allowMultiple=true *), * @SWG\ResponseMessage(код=200, зурвас = "json (мессеж => "хэрэглэгчийн_мессеж")"), * @SWG\ResponseMessage (код=400, мессеж = "нэвтээгүй" алдаатай json" ) *) *) */

    Хэн нэгэн миний алдааг харж байна уу?

    Аливаа тусламжийг урьж байна.

    Хүндэтгэсэн

    Шинэчлэх. Санал болгосны дагуу би paramType-ийг хоёуланг нь "асуулга" болгож, замыг өөрчилсөн:

    @SWG\Api(зам="/хэрэглэгч/мессеж/(sessionToken)",

    гэхдээ тэр тэмцэгчээр ажиллаагүй.

    Elipse PDT дахь xdebug нь:

    RequestURI => /ias/public/user/messages/(sessionToken)

    QueryParams => Zend\\Stdlib\\Parameters - *ArrayObject*storage => Массив - =>

    Swagger JSON:

    ( "apiVersion": "1.0.0", "swaggerVersion": "1.2", "apis": [ ( "зам": "\/хэрэглэгч", "тайлбар": "Хэрэглэгчийн талаарх үйлдлүүд" ) ], "мэдээлэл" : ( "гарчиг": "Мобайл хандалтын api", "тайлбар": "Энэ бол гар утасны хандалтын ххх API.", "termsOfServiceUrl": null, "холбоо барих": "xxx", "лиценз": null, "licenseUrl" : null, "_partialId": null, "_partials": , "_context": ( "коммент": "\/**\ * @SWG\\Info(\ * title="Мобайл хандалтын api)",\ * description="This is the xxx mobile access api.",\ * contact="xxx",\ *)\ *\/", "line": 3 } } } !}

    Энд /хэрэглэгчийн гаралт байна:

    ( "basePath": "http://localhost/ias/public", "swaggerVersion": "1.2", "apiVersion": "1.0.0", "resourcePath": "/user", "apis": [ ( "зам": "/user/balance/(sessionToken)", "үйл ажиллагаа": [ ( "арга": "GET", "хураангуй": "Хэрэглэгчийн балансыг авдаг", "хоч": "getUserdata", "төрөл": "string", "parameters": [ ( "paramType": "path", "name": "sessionToken", "type": "string", "required": true, "allowMultiple": false, "description": "Идэвхтэй хэрэглэгчийн сессийн токен" ) ], "responseMessages": [ ( "код": 200, "мессеж": "json (баланс => "хэрэглэгчийн_ тэнцэл")" ), ( "код": 400, "мессеж" ": "нэвтэрсэнгүй" алдаатай json" ) ], "тэмдэглэл": "", "зөвшөөрөл": () ) ]), ( "зам": "/хэрэглэгч/логин", "үйл ажиллагаа": [ ( "method": "POST", "summary": "Хэрэглэгчийг системд оруулна", "хоч": "loginUser", "type": "string", "parameters": [ ( "paramType": "form", "name": "email", "type": "string", "required": true, "allowMultiple": false, "description": "Нэвтрэх хэрэглэгчийн имэйл" ), ( "paramType": "form", "нэр": "нууц үг", "төрөл": "мөр", "шаардлагатай": үнэн, "allowMultiple": худал, "тайлбар": "Тодорхой текстээр нэвтрэх нууц үг" ) ], "responseMessages": [ ( "code": 200, "message": "json with session_id, user_id, user_balance" ), ( "code": 400, "message": "json" алдаа "өгөгдсөн имэйл болон нууц үгтэй хэрэглэгч байхгүй"" ), ( " code": 400, "message": "json" алдаатай "хүчингүй оролт"" ), ( "код": 400, "message": "json" алдаа "шуудангийн хүсэлт байхгүй"" ) ], "тэмдэглэл": "" , "зөвшөөрөл": () ) ] ), ( "зам": "/хэрэглэгч/гарах", "үйл ажиллагаа": [ ( "арга": "POST", "хураангуй": "Хэрэглэгчийг гаргана", "хоч" : "logoutUser", "type": "string", "parameters": [ ( "paramType": "form", "name": "sessionToken", "type": "string", "required": true, " allowMultiple": false, "description": "Идэвхтэй хэрэглэгчийн сессийн токен" ) ], "responseMessages": [( "код": 200, "мессеж": "json (үр дүн => "устгагдсан")" ), ( "код": 400, "мессеж": "өгөгдсөн тал нь хэрэглэгчийн_session байхгүй" алдаатай json" ), ( "код": 400, "мессеж": "хүчингүй оролттой" json" ), ( "код" ": 400, "message": "json" алдаатай "public request"" ) ], "notes": "", "authorizations": () ) ]), ( "path": "/user/messages/( sessionToken)", "үйл ажиллагаа": [ ( "арга": "GET", "хураангуй": "Шинэ мессеж авах", "хоч": "getUsermessages", "төрөл": "string", "параметрүүд": [ ( "paramType": "зам", "нэр": "sessionToken", "төрөл": "string", "шаардлагатай": үнэн, "allowMultiple": худал, "тайлбар": "Идэвхтэй хэрэглэгчийн сессийн токен" ) ], "responseMessages": [ ( "код": 200, "мессеж": "json (мессеж => "хэрэглэгчийн_мессеж")" ), ( "код": 400, "мессеж": "нэвтрээгүй" алдаатай json "" ) ], "тэмдэглэл": "", "зөвшөөрөл": () ), ( "арга": "GET", "хураангуй": "Хуудсан мессеж авдаг", "хоч": "getUsermessagesPaged", "type" : "string", "parameters": [ ( "paramType": "path", "name": "sessionToken", "type": "string", "required": true, "description": "The token идэвхтэй хэрэглэгчийн сесс" ), ( "paramType": "асуулга", "нэр": "numMessages", "төрөл": "мөр", "шаардлагатай": үнэн, "тайлбар": "хуудас дээрх мессежийн тоо (numMessages & Хэрэв хоёуланг нь тохируулаагүй бол хуудасNr-г үл тооно)" ), ( "paramType": "асуулга", "нэр": "pageNr", "төрөл": "мөр", "шаардлагатай": үнэн, "тайлбар": "хуудасны дугаар ( Хэрэв хоёуланг нь тохируулаагүй бол numMessages & pageNr-г үл тооно)" ) ], "responseMessages": [ ( "код": 200, "мессеж": "json (мессеж => "хэрэглэгчийн_мессеж")" ), ( "код": 400 , "мессеж": "нэвтэрч ороогүй" алдаатай json" ) ], "тэмдэглэл": "", "зөвшөөрөл": () ) ]), ( "зам": "/хэрэглэгч/хэрэглэгчийн өгөгдөл", "үйл ажиллагаа" : [ ( "арга": "POST", "хураангуй": "Нийтлэлийн хэрэглэгчийн өгөгдөл", "хоч": "postUserdata", "төрөл": "мөр", "параметрүүд": [ ( "paramType": "form", "name": "sessionToken", "type": "string", "required": true, "allowMultiple": false, "description": "Идэвхтэй хэрэглэгчийн сессийн токен" ), ( "paramType": "form" ", "нэр": "нууц үг", "төрөл": "мөр", "шаардлагатай": худал, "allowMultiple": худал, "тайлбар": "шинэ нууц үг" ), ( "paramType": "form", " нэр": "хаяг", "төрөл": "мөр", "шаардлагатай": худал, "allowMultiple": худал, "тайлбар": "шинэ хаяг" ), ( "paramType": "form", "нэр": "housenr", "type": "string", "required": false, "allowMultiple": false, "description": "new housenr" ), ( "paramType": "form", "name": "zip" , "төрөл": "мөр", "шаардлагатай": худал, "allowMultiple": худал, "тайлбар": "шинэ зип" ), ( "paramType": "хэлбэр", "нэр": "хот", "төрөл" ": "string", "required": false, "allowMultiple": false, "description": "new city" ), ( "paramType": "form", "name": "email", "type": " мөр", "шаардлагатай": худал, "allowMultiple": худал, "тайлбар": "шинэ имэйл" ) ], "responseMessages": [ ( "код": 200, "мессеж": "json (хэрэглэгч => "хэрэглэгчийн өгөгдөл" ")" ), ( "код": 400, "мессеж": "алдаатай json

    Миний swagger-ui ямар ч хүсэлтийн параметрүүдийг илгээхгүй байгаа нь алдаа мэт санагдаж байна уу? Энд нэг query-парам, sessionToken бүхий жишээ байна: (FireBug 2.0.6-р удирддаг)

    GET /ias/public/user/balance HTTP/1.1 Host: localhost User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0 Зөвшөөрөх: application/json Зөвшөөрөх хэл: de, en-US;q=0.7,en;q=0.3 Зөвшөөрөх-кодлох: gzip, deflate Content-Type: application/json Referer: http://localhost/ias/swagger/ Күүки: __utma=111872281.581414660.16741.136731. 6.255; uvts=sB5Dda3cZBNdaTk; searchpanel-close=set Холболт: амьд байлгах

    Хариулт нь:

    HTTP/1.1 400 буруу хүсэлтийн огноо: Мягмар, 2014 оны 11-р сарын 25 14:58:20 GMT Сервер: Apache/2.4.9 (Win32) PHP/5.5.12 X-Powered-By: PHP/5.5.12 Агуулгын урт: 25 Холболт: хаах Content-Type: application/json; charset = utf-8

    Ямар ч sessionToken дамжуулагдаагүй тул хариулт зөв байлаа.

    Энэ нь ажил шаарддаг, гэхдээ энэ нь swagger-ui-ээс ирээгүй:

    GET /ias/public/user/balance?sessionToken=HTTP/1.1 Хост: localhost Хэрэглэгч-Агент: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0 Зөвшөөрөх: text/html,application/ xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Зөвшөөрөх хэл: de,en-US;q=0.7,en;q=0.3 Зөвшөөрөх-кодлох: gzip, deflate Cookie: __utma=111872281.58141466 .1366700677.1394721873.1394723866.255; uvts=sB5Dda3cZBNdaTk; searchpanel-close=set Холболт: амьд байлгах



    Холбогдох хэвлэлүүд