• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

php - swift3 - 将图像上传到网络服务器

[复制链接]
菜鸟教程小白 发表于 2022-12-11 19:40:01 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在尝试将从 UIImagePickerController 中选择的图像上传到我在 AWS 上托管的 Web 服务器。我正在关注本教程:https://www.udemy.com/swift-php-mysql-user-sign-up-sign-in-sign-out-and-more/learn/v4/overview我收到一堆 Argument labels '(_' do not match any available overloads 错误。我尝试搜索此错误,但没有找到与我当前代码相关的任何内容。我没有使用教程中的原始代码,我正在尝试将其翻译为 Swift3 并使用以下答案:iOS swift NSMutableData has no member appendString遵循最佳编码实践。这是我当前的代码:

func createBodyWithParameters(_ parameters: [String: String]?, filePathKey: String?, imageDataKey: Data, boundary: String) -> Data {
        var body = Data();

        if parameters != nil {
            for (key, value) in parameters! {
                body.append(Data("--\(boundary)\r\n"))
                body.append(Data("Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n"))
                body.append(Data("\(value)\r\n"))
            }
        }

        let filename = "user-profile.jpg"

        let mimetype = "image/jpg"

        body.append(Data("--\(boundary)\r\n"))
        body.append(Data("Content-Disposition: form-data; name=\"\(filePathKey!)\"; filename=\"\(filename)\"\r\n"))
        body.append(Data("Content-Type: \(mimetype)\r\n\r\n"))
        body.append(imageDataKey)
        body.append(Data("\r\n"))



        body.append(Data("--\(boundary)--\r\n"))

        return body as Data
    }

谁能解释我做错了什么?谢谢!



Best Answer-推荐答案


你不能像这样初始化数据:

Data("foo")

你可以做的是:

Data("foo".utf8)

就像您提供的链接一样。 (您缺少 .utf8)

编辑:是的,那家伙说他不想使用那个代码,但是听我说,这个版本的扩展不允许有损连接,只要你在字符串中写任何东西,数据就永远不会为零。

extension NSMutableData {
   func appendString(_ string: String) {
        let data = string.data(using: String.Encoding.utf8, allowLossyConversion: false)
        append(data!)
    }
}

用法:

body.appendString("foo")

只需像这样初始化正文:

var body = NSMutableData()

然后像这样返回

return body as Data

关于php - swift3 - 将图像上传到网络服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43967087/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap