Ответ Swift-JSON начинается с u201c и заканчивается на u201d [закрыто]
У меня есть скрипт Swift, цель которого прямо сейчас-во-первых, отправить строку JSON в файл PHP; во-вторых, вернуть значения, отправленные в скрипт php, разбираемый в консоли XCODE; в-третьих, вернуть одно из значений ниже. Однако моя строка возвращает значения, которые начинаются с u201C и заканчиваются на u201d.
Может ли кто-нибудь, пожалуйста, сообщить мне, во-первых, почему он это делает, а во-вторых, как это решить?
override func viewDidLoad() {
super.viewDidLoad()
let myUrl = NSURL(string: "http://localhost/phpPost/demo.php");
let request = NSMutableURLRequest(URL: myUrl!);
request.HTTPMethod = "POST";
let postString = "firstName=James&lastName=Bond";
request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding);
let task = NSURLSession.sharedSession().dataTaskWithRequest(request) {
data, response, error in
if error != nil {
println("error=(error)")
return
}
println("******response = (response)")
// Print out response body
let responseString = NSString(data: data, encoding: NSUTF8StringEncoding)
println("****response data=(responseString)")
//Let’s convert response sent from a server side script to a NSDictionary object:
var err: NSError?
var myJSON = NSJSONSerialization.JSONObjectWithData(data, options: .MutableLeaves, error:&err) as? NSDictionary
if let parseJSON = myJSON {
var firstNameValue = parseJSON["firstName"] as? String
println("firstName: (firstNameValue)")
}
}
task.resume()
Кроме того, вот PHP:
<?php
$firstName= $_REQUEST["firstName"];
$lastName = $_REQUEST["lastName"];// Store values in an array
$returnValue = array(“firstName”=>$firstName, “lastName”=>$lastName);
// Send back request in JSON format
echo json_encode($returnValue);
?>
Вот что такое возвращено:
****Данные ответа=необязательно ({"u201cfirstNameu201d": "Джеймс","u201clastName u201d": "Бонд"})
имя: nil
1 ответ:
Посмотрите внимательно на то, что вы разместили здесь. Сравните котировки в
$returnValueв PHP с котировками в двух предыдущих строках. Вы используете фигурные кавычки вместо простых двойных кавычек.У вас есть:
$returnValue = array(“firstName” => $firstName, “lastName” => $lastName);Вы хотите:
$returnValue = array("firstName" => $firstName, "lastName" => $lastName);
Comments