【发布时间】:2015-02-04 06:46:36
【问题描述】:
我正在制作一个需要在其许多 ViewController 中发出 HTTP 请求的应用。
我最终将这些代码复制并粘贴到每个 ViewController 中,并监听 NSURLConnectionDelegate 和 NSURLConnectionDataDelegate 的委托回调
func makeRequest()
{
//Base64
var username = "testUsername";
var password = "testPassword";
var loginString = NSString(format: "%@:%@", username, password);
var loginData: NSData = loginString.dataUsingEncoding(NSUTF8StringEncoding)!;
var base64LoginString = loginData.base64EncodedStringWithOptions(nil);
var url: NSURL = NSURL(string: self.HTTP_REQUEST_STRING)!;
var urlRequest: NSMutableURLRequest = NSMutableURLRequest(URL: url);
urlRequest.setValue("Basic \(base64LoginString)", forHTTPHeaderField: "Authorization");
urlRequest.HTTPMethod = "POST";
urlConnection = NSURLConnection(request: urlRequest, delegate: self)!;
}
func connection(connection: NSURLConnection!, didReceiveData data: NSData!)
{
self.resultData.appendData(data);
}
func connectionDidFinishLoading(connection: NSURLConnection!)
{
//Do Something
}
func connection(connection: NSURLConnection, didFailWithError error: NSError)
{
//Do Something
}
我想知道是否有比这更好的方法,而不是将代码复制并粘贴到每个 ViewController 中?
是否可以将这些代码放入一个类中?但是,我们如何知道连接是否已完成加载?
很抱歉这个问题,我缺乏良好的面向对象设计的知识。
谢谢
【问题讨论】:
-
抱歉直言不讳,但您应该真正开始定位来自 Lynda.com、CodeSchool、TreeHouse 或 raywenderlich.com 等网站的书籍和/或教程。您要求的是非常基本的编程方法,这些方法不仅仅与面向对象的设计相关,而是与如何开发一般应用程序有关。
标签: ios oop swift httprequest nsurlrequest