$username = $_POST['username'];
$password = $_POST['password'];
if (!empty($username) && !empty($password)) {
$encrypted_password = md5($password);
$user -> login($username,$encrypted_password);
} else {
$json['error'] = 'You must fill all fields!';
echo json_encode($json);
mysqli_close($this->connection);
}
{"error":"You must fill all fields!"}
但是在iOS中,当我们对字符串进行编码时,它会将发送给php脚本的整个字符串转换为:
Optional(<75736572 6e616d65 3d612670 61737377 6f72643d 61>)
因为php脚本希望数据如下所示:
username=xyz&password=xyz
它当然不起作用。
SWIFT代码:
let username = UsernameTextField.text ?? ""
let password = PasswordTextField.text ?? ""
if(username.isEmpty || password.isEmpty) {return; }
let request = NSMutableURLRequest (URL: NSURL(string: "http://myip/loginregister.php")!)
request.HTTPMethod = "POST"
request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField:"Content-Type")
let postString = "username=\(username)&password=\(password)"
request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)
let task = NSURLSession.sharedSession().dataTaskWithRequest(request) { data, response, error in
guard error == nil && data != nil else {
// check for fundamental networking error
print("error=\(error)")
return
}
let data = postString.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)!
do {
if let json = try NSJSONSerialization.JSONObjectWithData(data, options: []) as? NSDictionary {
let success = json["success"] as? Int
print("Success: \(success)")
} else {
let jsonStr = NSString(data: data, encoding: NSUTF8StringEncoding)
print("Error could not parse JSON: \(jsonStr)")
}
} catch let parseError {
print(parseError) `JSONObjectWithData`
let jsonStr = NSString(data: data, encoding: NSUTF8StringEncoding)
print("Error could not parse JSON: '\(jsonStr)'")
}
}
task.resume()
错误消息:
Error Domain=NSCocoaErrorDomain Code=3840 "JSON text did not start with array or object and option to allow fragments not set." UserInfo={NSDebugDescription=JSON text did not start with array or object and option to allow fragments not set.}
Error could not parse JSON: 'Optional(username=a&password=a)'
问题内容: 我想构造与OPENROWSET方法一起使用的查询。 例子: 但是当我这样做时,我得到了错误: ’+’附近的语法不正确 如何建立查询?谢 问题答案: 尽管in中的查询被指定为字符串,并且通过这种方式看起来非常像动态查询,但是语法不允许将其以同样的方式构造成一部分。 恐怕,您将必须构建一个动态查询,该查询将调用,如下所示:
我正在使用保护我的应用程序,并且我要求允许用户通过第三方应用程序中的链接登录。 但是,第三方应用程序中的链接将重定向到特定资源,而不是登录页面,用户希望访问的资源将被定义为查询字符串参数。因此,例如,链接的形式为: 当用户单击此链接时,他们应该被带到我的Spring Security配置中定义的登录页面,如果经过身份验证,则应该被重定向到包含querystring参数的原始链接。querystri
我正在开发一个Android应用程序,它使用改造来创建一个restful客户端。为了调试网络调用,我想显示或转储实际被调用的url。有办法做到这一点吗?我在下面提供了一些代码,显示了应用程序当前如何使用翻新。 客户端接口定义: 使用生成的客户端的服务:
我使用的是spring boot Version-2.0.6.Release和spring cloud Version-finchley.sr2
问题内容: 有人告诉我不能更改Java中的字符串。下面的代码呢? 它不改变字符串吗?另外,replace()的实现在哪里;相比于(); 等于(); 提供?我只是在这里使用这些功能,但实际上在哪里实现? 问题答案: String.replace()返回一个新的String。 “名称”是对String对象的引用,因此可以将其重新分配为指向name.replace(),但它将指向一个新对象。 这是Str
我试图让一个语句起作用,但由于某些原因,它不起作用。应该很简单。 假设字符串 我的代码是: 两种规格的结果都是1。