Я хочу отправить параметр через Alamofire в webservice. Я проверил webservice, и он работает нормально, но он не принимает параметр, просто получая ответ от другой части.
Вот мой код Alamofire, который я использую в быстрой iOS.
let parameters: Parameters = [ "signers": "ram,Rahim", "message": "hello,World", "path": "www.webservice.com", "sequence":"1,2" ] Alamofire.request("http://www.webservice.pixcel.com/esp.php", parameters: parameters).responseJSON(completionHandler: { (response) in print(response) print(response.result) })
Вот код Webservice – esp.php
<?php //Turn off all error reporting error_reporting(0); if( $_SERVER['REQUEST_METHOD']=='POST' && $_POST['signers'] && $_POST['message'] && $_POST['path'] && $_POST['sequence']){ $path_s = $_POST['path']; $path_array = explode(',', $path_s); $signer_s = $_POST['signers']; $signer_array = explode(',', $signer_s); $message_s =$_POST['message']; $message_array = explode(',', $message_s); $sequence_s =$_POST['sequence']; $sequence_array = explode(',', $sequence_s); for ($i = 0; $i < count($signer_array); $i++) { $signer = ($signer_array[$i]); $path = ($path_array[0]); $message = ($message_array[0]); $sequence =($sequence_array[$i]); $con = mysql_connect('pixcel.pixcelinfo.com','user_pixcel','abc123') or die('Cannot connect to the DB'); mysql_select_db('easy_sign',$con); $query = mysql_query("INSERT INTO `path` (url,name,signer,sequence,message,flag) VALUES ('".$path."','".$name."','".$signer."','".$sequence."','".$message."','false')"); } if($query){ // echo "Data inserted"; $return['url'] = 'true'; $return['data'] = "Data inserted"; header('Content-type: application/json'); exit( json_encode( $return ) ); } } else { $return['status']='false'; $return['message']='Data not inserted!'; $return['line']=__LINE__; header('Content-type: application/json'); exit( json_encode( $return ) ); } ?>
Хорошо, основываясь на документах Alamofire, если вы не укажете HTTPMethod
:
Параметр метода Alamofire.request по умолчанию
.get
.
Поэтому, судя по этому, я думаю, что отправленный запрос есть .get
, поэтому он не имеет никаких параметров, связанных с ним.
Измените свой код на:
Alamofire.request("http://www.webservice.pixcel.com/esp.php", method: .post, parameters: parameters).responseJSON(completionHandler: { (response) in print(response) print(response.result) })