1

我正在考虑做这样的事情:

    NSString *path = [NSString stringWithFormat:@"http://www.somedomain.com?id=%@&email=%@",
[id.text stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceCharacterSet]], 
[emailField.text stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceCharacterSet]]];

那行得通吗?或者如果这些字段是空白的,那会导致某种错误吗?

谢谢!

4

3 回答 3

5

如果字段为空,您将获得一个包含id=(null)&email=(null)格式化时间的 url。

在这种情况下,指望nil使消息短路是行不通的,因为您没有将消息发送到任何将为零的对象。

您应该分别检查这两个字段并将它们设置为 @"" (如果您的 API 可以处理)或省略 URL 中的查询字符串。

于 2013-03-26T13:21:55.423 回答
2

对于修剪,它不是必需的。因为向 null 发送消息不会有任何影响,同时您需要检查该 url 是否有效。

于 2013-03-26T13:28:06.320 回答
1

您可以使用以下方法检查其是否为空

 if ([[emailField text] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]].length ==0 ||[[id text] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]].length ==0 )
{
//Dont call api
}else{
// call api
}
于 2013-03-26T13:22:59.820 回答