标签: nsurlrequest

将数据附加到POST NSURLRequest

如何将数据附加到现有数据POST NSURLRequest?我需要添加一个新参数userId=2323.

objective-c nsurlrequest ios

82
推荐指数
5
解决办法
11万
查看次数

如何使用NSURLRequest在Http请求中发送json数据

我是Objective-c的新手,我开始在最近的请求/响应中投入大量精力.我有一个可以调用url(通过http GET)并解析返回的json的工作示例.

这个工作的例子如下

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
    [responseData setLength:0];
}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    [responseData appendData:data];
}

- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
  NSLog([NSString stringWithFormat:@"Connection failed: %@", [error description]]);
}

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
    [connection release];
  //do something with the json that comes back ... (the fun part)
}

- (void)viewDidLoad
{
  [self searchForStuff:@"iPhone"];
}

-(void)searchForStuff:(NSString *)text
{
  responseData = [[NSMutableData data] retain];
    NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.whatever.com/json"]];
    [[NSURLConnection alloc] initWithRequest:request delegate:self];
}
Run Code Online (Sandbox Code Playgroud)

我的第一个问题是 - …

iphone cocoa-touch json objective-c nsurlrequest

79
推荐指数
3
解决办法
12万
查看次数

带参数的Swift GET请求

我对swift非常新,所以我的代码中可能会有很多错误,但我想要实现的是向GET带有参数的localhost服务器发送请求.更多,所以我试图实现它,因为我的函数有两个参数baseURL:string,params:NSDictionary.我不确定如何将这两者合并到实际的URLRequest中?这是我到目前为止所尝试的

    func sendRequest(url:String,params:NSDictionary){
       let urls: NSURL! = NSURL(string:url)
       var request = NSMutableURLRequest(URL:urls)
       request.HTTPMethod = "GET"
       var data:NSData! =  NSKeyedArchiver.archivedDataWithRootObject(params)
       request.HTTPBody = data
       println(request)
       var session = NSURLSession.sharedSession()
       var task = session.dataTaskWithRequest(request, completionHandler:loadedData)
       task.resume()

    }

}

func loadedData(data:NSData!,response:NSURLResponse!,err:NSError!){
    if(err != nil){
        println(err?.description)
    }else{
        var jsonResult: NSDictionary = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as NSDictionary
        println(jsonResult)

    }

}
Run Code Online (Sandbox Code Playgroud)

get nsurlrequest ios swift

66
推荐指数
3
解决办法
8万
查看次数

NSURLConnection使用iOS Swift

我正在尝试按照本教程使用Swift和连接到JSON api NSURLConnection.我可以看到它正在击中网址,但connectionDidFinishLoading似乎没有开火.

import UIKit

class Remote: NSObject {

    var host = "http://localhost:3000"
    var query = String()
    var data: NSMutableData = NSMutableData()

    func connect(query:NSString) {
        self.query = query
        var url = self.document()
        var conn = NSURLConnection(request: url, delegate: self, startImmediately: true)
    }

    func endpoint() -> NSURL {
        var query = self.host + self.query
        return NSURL(string: query)
    }

    func document() -> NSURLRequest {
        return NSURLRequest( URL: self.endpoint() )
    }

    func connection(didReceiveResponse: NSURLConnection!, didReceiveResponse response: NSURLResponse!) { …
Run Code Online (Sandbox Code Playgroud)

nsurlconnection nsurlrequest ios swift

60
推荐指数
1
解决办法
10万
查看次数

http请求的zip文件内容类型

我通过HTTPREQUEST向服务器发送一个zip文件,这种文件的内容类型应该是什么?该文件是包含png类型图像的zip文件.

谢谢

http nsurlrequest ios

53
推荐指数
2
解决办法
10万
查看次数

将HTTP标头添加到NSURLRequest

有没有办法将HTTP标头添加到NSURLRequest对象?我以前用它们添加NSMutableURLRequest:

[request addValue:@"PC" forHTTPHeaderField:@"machineName"]
Run Code Online (Sandbox Code Playgroud)

iphone http objective-c nsurlrequest

51
推荐指数
3
解决办法
6万
查看次数

如何在Swift上的sendSynchronousRequest中检查Response.statusCode

如何在Swift中检查SendSynchronousRequest中的response.statusCode代码如下:

let urlPath: String = "URL_IS_HERE"
var url: NSURL = NSURL(string: urlPath)
var request: NSURLRequest = NSURLRequest(URL: url)
var response: AutoreleasingUnsafeMutablePointer<NSURLResponse?> = nil

var error: NSErrorPointer? = nil
var data = NSURLConnection.sendSynchronousRequest(request, returningResponse: response, error: nil) as NSData?
Run Code Online (Sandbox Code Playgroud)

之前和在目标c中,我们检查response.statusCode用这个:(长)response.statusCode但在swift中我不知道如何检查响应状态代码

nsurlconnection nsurlrequest ios swift

44
推荐指数
7
解决办法
5万
查看次数

NSData和iOS上的POST上传图像

我一直在梳理很多关于在iOS上通过POST上传图片的帖子.尽管有关此主题的大量信息,但我无法正确上传从我的iPhone模拟器照片库中获取的JPEG数据.数据一旦在服务器上,就只是一串巨大的十六进制数据.NSData不应该只是一个字节流吗?我不知道所有的十六进制是什么,或者为什么这个代码似乎适用于其他所有人.

这是有问题的代码:

-(void)uploadWithUserLocationString:(NSString*)userLocation{
NSString *urlString = @"http://some.url.com/post";

// set up the form keys and values (revise using 1 NSDictionary at some point - neater than 2 arrays)
NSArray *keys = [[NSArray alloc] initWithObjects:@"auth",@"text",@"location",nil];
NSArray *vals = [[NSArray alloc] initWithObjects:self.authToken,self.textBox.text,userLocation,nil];

// set up the request object
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];

//Add content-type to Header. Need to use a string boundary for data uploading.
NSString *boundary = [NSString stringWithString:@"0xKhTmLbOuNdArY"];
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; …
Run Code Online (Sandbox Code Playgroud)

iphone post nsdata nsurlrequest ios

37
推荐指数
3
解决办法
6万
查看次数

NSURLConnection/NSURLRequest gzip支持

有谁知道NSURLConnection/NSURLRequest是否支持gzip请求.

如果有,您能提供更多信息吗?

cocoa cocoa-touch gzip nsurlconnection nsurlrequest

36
推荐指数
1
解决办法
2万
查看次数

在iphone应用程序中使用自签名证书

我为这个冗长的问题提前道歉.我遇到了自签名SSL证书的问题,我想记录到目前为止我尝试过的所有内容.

我正在开发一个与REST服务通信的应用程序.测试服务器使用自签名的ssl证书,我可以在我的计算机上安装该证书.这是一个需要密码才能安装的.p12文件.如果未安装此证书,则对服务器的所有请求都将返回403.

.p12在Keychain中安装三个项目,一个"根证书颁发机构",一个由"根证书颁发机构"颁发的"测试用户"证书,以及一个与"测试用户"证书相关联的私钥.

我通过给自己发送.p12文件,在iPad上安装了这个证书.我点击附件,输入密码,现在我可以在Safari中访问该网站.不幸的是,由于应用程序沙盒,这还不足以让我的应用程序与REST服务进行通信.

我正在使用ASIHTTPRequest来完成与我的应用程序中的REST服务的所有通信.每个请求都是ASIHTTPRequest的子类.我发现我必须做的第一件事就是调用,[self setValidatesSecureCertificate:NO];以便它甚至可以尝试SSL连接到服务器.如果这就是我所做的,我会从服务中获得403错误代码.

现在我似乎无法弄清楚如何获得使用证书的请求.我已经尝试将这三个项目导出为单独的.cer文件,包括它们在项目中,并使用以下代码将它们添加到请求中:

NSData *data = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"cert" ofType:@"cer"]];
SecCertificateRef cert = SecCertificateCreateWithData(NULL, (CFDataRef)data);
...
[self setClientCertificates:[NSArray arrayWithObjects:(id)cert, ..., nil]];
Run Code Online (Sandbox Code Playgroud)

虽然使用这种方法代码执行没有问题,但我仍然得到403错误.

我甚至尝试在我的应用程序中包含.p12文件并使用相同的代码导入它.这会失败,因为SecCertificateCreateWithData返回nil.

我承认我真的不知道我在这里做什么.这一切都在我头上,任何人都可以给我的任何帮助将不胜感激.

ssl ssl-certificate asihttprequest nsurlrequest ios

34
推荐指数
1
解决办法
3万
查看次数