草庐IT

swift - 使用 Alamofire.upload(...) 将 NSData 从 S3 放入 PreSigned URL 在 iOS 8 上不起作用

以下代码在iOS9上运行良好,但在iOS8上运行时失败,Amazon返回错误400。响应仅包含header:连接=关闭;“内容类型”=“应用程序/xml”;日期=“星期三,2016年4月13日12:19:21GMT";服务器=AmazonS3;...NSData是一个图像,Content-Type是“image/png”,这告诉亚马逊不要将它存储为“二进制/八位字节流”。funcuploadFile(locationURL:String,http:Alamofire.Method,mimeType:String,fileData:NSData)->ApiCaller{Alamofire

swift - 我如何使用 swift 语言修改和反转 NSData 中的每一位?

如何使用swift语言修改和反转NSData中的每一位?我想做一些类似代码混淆的东西。//.....lettempstring:String="helloworld!"lettempnsstring:NSString=tempstringasNSStringvartempnsdata:NSData!tempnsdata=tempnsstring.dataUsingEncoding(encoding)//....那么..请告诉我如何修改NSData中的数据?给我一些编码提示。谢谢 最佳答案 NSData是不可变类型,因此您无法修改其内

ios - Swift:JSON 写入中的无效类型(UIImage)

我正在尝试将UIImage转换为base64字符串,以便可以将其保存到文件中然后上传。我正在做以下事情:代码片段:varwritePath:String!varparams:NSMutableDictionary=["file1":UIImageJPEGRepresentation(self.imageView1.image!,1.0)!.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue:0)),"userId":user_id]do{letbodyJson=tryNSJSONSerializatio

post - 无法将表达式的类型 'NSData?' 转换为类型 'NSData?'

我在尝试附加HTTP主体时遇到了这个无意义的错误,但在谷歌搜索时我无法找到任何答案。funcrunRequest(url:String,arguments:String,method:String,closure:(NSData?,NSURLResponse,NSError?)->Void){varfinalUrl:Stringvarrequest:NSMutableURLRequestif(method=="POST"){finalUrl=urlrequest=NSMutableURLRequest(URL:NSURL(string:url)!)request.HTTPMethod=

ios - 编码/解码 base64 decodedData = nil

昨天我为此写了一个工作代码,但我删除了它,当写一个新的代码时,有些东西真的很奇怪:我用这种方式编码图片:letpictureData=UIImagePNGRepresentation(picture!)letpictureToString64=pictureData?.base64EncodedStringWithOptions(NSDataBase64EncodingOptions.Encoding64CharacterLineLength)(我之前有JPEGRepresentation,但它不起作用,所以我尝试使用JPEG)我通过获取pic64以这种方式解码,我相信它具有正确的值。

ios - 从 NSData 字节获取浮点值

这个怎么写floatvalue=*(float*)[databytes];swift?谢谢。 最佳答案 对应的Swift代码为letvalue=UnsafePointer(data.bytes).memory作为您的Objective-C代码,它假定NSDataobjects有(至少)4个字节,表示一个浮点值按主机字节顺序。UnsafePointer(..)对应于(float*)Actor。.memory对应于取消引用运算符*.另一种选择是varvalue:Float=0data.getBytes(&value,length:siz

ios - 解码 base64String 值返回 nil

我正在尝试从base64String获取UIImage,但我遇到了一个有趣的问题。即使编码后的字符串已满,对其解码也返回nil。letbase64String=imageFilePathas!Stringprint(base64String)//returnsencodedvalueletdecodedData=NSData(base64EncodedString:base64String,options:NSDataBase64DecodingOptions(rawValue:0))print(decodedData)//returnsnil编辑:它是这样的24wKiOQeetKPW

ios - BindMemory 迁移 Swfit 3

如何将此代码迁移到Swift3?letkeyBytes=keyData.bytes.bindMemory(to:Void.self,capacity:keyData.count)我遇到了错误'bytes'isunavailable:usewithUnsafeBytesinstead 最佳答案 keyData是Data对象的类型并且没有属性bytes,将keyData转换为NSData然后访问bytes。letkeyBytes=NSData(data:keyData).bytes.bindMemory(to:Void.self,cap

arrays - 数组在 dispatch_barrier_sync 上损坏

我有2个将数据附加到数组的函数和一个处理它的函数。我使用dispatch_barrier_sync来防止其他函数在我处理数据时更改数据。内部追加函数:autoreleasepool{dispatch_barrier_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0)){[weakself]()->Voidinself?.bufferVector_.append(data)}}内部流程函数:autoreleasepool{dispatch_barrier_sync(dispatch_get_global_qu

ios - 如何快速将结构编码和解码为 NSData?

我有以下结构定义:structThreadManager:Equatable{letfid:Intletdate:NSDateletforumName:Stringlettypeid:Intvarpage:IntvarthreadList:[Thread]vartotalPageNumber:Int?}线程是:structThread:Equatable{letauthor:AuthorletreplyCount:IntletreadCount:Intlettitle:Stringlettid:IntletisTopThread:BoolvarattributedStringDicti