API שליחת סמסים בחברת מיקרופיי
-
הוספתי עכשיו גם https
ואולי ? בסוף ה php
וגם לא שולח.
איפה אמור לחזור אלי? -
אולי זה?
ERROR --> Description: you must send one of the following: get=1 or post=2, remoteIP=84.110.37.234 -
@אבי-203 אולי תנסה להוסיף ? לפני הפרמטרים של הפוסט -
let userInput = $w("#textBox1").value; //רשימת המספרים var response = await fetch("http://www.micropay.co.il/ExtApi/ScheduleSms.php", { method: "POST", body: "?post=2&uid=#####&un=######&msg=test+message&list=" + userInput + "&charset=iso-8859-8&from=03555555", }).then((x) => x.text()); כך נראה מהדוגמאות באתר שלהם
-
חשבתי להוסיף את הסימן שאלה אחרי ה php אבל זה וזה לא עבד.
-
@אבי-203 טוב תראה, מה שבטוח שזו השגיאה שמוצגת לך - כתוב לך שלא הזנת את הבקשה כנדרש.
אולי תנסה להריץ את הכל בכתובת אחת ארוכה?
אני מתכוין -
ככהlet userInput = $w("#textBox1").value; //רשימת המספרים var response = await fetch("http://www.micropay.co.il/ExtApi/ScheduleSms.php?post=2&uid=#####&un=######&msg=test+message&list=" + userInput + "&charset=iso-8859-8&from=03555555" { method: "POST" }).then((x) => x.text()); עריכה טעות בסיסית שלי בהבנת המתודולוגיה של POST... עי' להלן
-
@chv מה שעשית זה GET.
אתם צריכים להכיר את ההבדל בין GET לPOST, כתבתי על זה כמה פעמים.
(בPOST אין סימן שאלה בהתחלה וגם הפרמטרים יכולים להישלח בגוף הבקשה, וממילא הפרמטרים יכולים להיות ארוכים ללא הגבלה).
צריך גם לדעת לשלוח את הבקשה, ולתעד את התשובה או את השגיאה.לגופה של בעיה ייתכן שצריך להוסיף כותרת
Content-Type
עםapplication/x-www-form-urlencoded
-
זה נהיה פתאום שיח של גדולים.. גדול עלי.
אני מבין גם מהמדריך שלהם שget מוגבל עד 10 מספרים, post מומלץ עד 10000
ב get אני משתמש תמיד, משרשר את כל הפרמטרים אחרי ה? זה עובד נהדר.
@dovid לא הבנתי מה הכוונה"לגופה של בעיה ייתכן שצריך להוסיף כותרת Content-Type עםapplication/x-www-form-urlencoded"
-
var response = await fetch('http://www.micropay.co.il/ExtApi/ScheduleSms.php', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded', }, body: 'post=2&uid=#####&un=######&msg=test+message&list=050000000&charset=iso-8859-8&from=03555555' }).then(x => x.text()).catch(console.error); console.log(response); תריץ בדיוק ככה (חוץ משינוי הפרמטרים של השם והסיסמה והטלפון הבודד)
ותמסור את תוצאות הlog (אתה יכול לגשת ללוג?) -
זה מה שהחזיר
undefinedוגם למעלה
ERROR --> Description: you must send one of the following: get=1 or post=2, remoteIP=84.110.37.234 -
הזוי דיברתי עם התמיכה שלהם, הם לא יודעים להסביר רק ב php...
-
ומה הם נותנים בPHP?
-
זה לכאורה גם בget
<?php //******************************************************************************* // Function: mpSendSMS // Author: MicroPay // Parameters: // Required: // token - the token you created in MicroPay // msg - the message yo want to send // to - comma seperated phone list or pool id in micropay system // from - phone number that will appear as source of the SMS // Optional: // date - date for scheduling in the format "2009-08-17 14:33" -> YYYY-MM-DD HH:MM // Return: // result of the request //******************************************************************************* function mpSendSMS($token, $msg, $to, $from, $date = "") { $msg = urlencode($msg); $request = "http://www.micropay.co.il/ExtApi/ScheduleSms.php"; $request .= "?get=1&token=".$token."&msg=".$msg."&from=".$from; if (strlen($to) > 8) $request .= "&list=".$to; else $request .= "&pid=".$to; if ($date != "") { $DateValue = strtotime($date); $DateParts = getdate($DateValue); $request .= "&dy=".$DateParts["year"]; $request .= "&dm=".$DateParts["mon"]; $request .= "&dd=".$DateParts["mday"]; $request .= "&dh=".$DateParts["hours"]; $request .= "&di=".$DateParts["minutes"]; } $curlSend = curl_init(); curl_setopt($curlSend, CURLOPT_URL, $request); curl_setopt($curlSend, CURLOPT_RETURNTRANSFER, 1); $curlResult = curl_exec($curlSend); $curlStatus = curl_getinfo($curlSend, CURLINFO_HTTP_CODE); curl_close($curlSend); if ($curlStatus === 200) return $curlResult; else return "ERROR"; } ?> -
פוסט זה נמחק!
-
עכשיו הם שלחו לי את זה.
לא הבנתי איפה הם רוצים שיכנס מספר הטלפון השולח המקבל.<script type="text/javascript"> <!-- // param - need to be someting like this: 'post=2&uid=#####&un=#####&msg=test+message&list=0545370070&from=03622222' function sendSms(param) { var xhr = new XMLHttpRequest(); xhr.open("POST", 'http://www.micropay.co.il/ExtApi/ScheduleSms.php', true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); xhr.send(param); xhr.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { alert(this.responseText); } }; } //--> </script> <a href
13/32