Files
peko-ios/docs/MomentsPublish_API_Swift.md

1.7 KiB
Raw Blame History

MomentsPublish 动态发布接口Swift 封装)

1. 参数模型

struct MomentsPublishRequest {
    let uid: String
    let type: String
    let worldId: String?
    let content: String
    let resList: [String]?
}

2. 接口调用方法

class MomentsAPI {
    static func publishMoment(
        request: MomentsPublishRequest,
        completion: @escaping (Result<Void, Error>) -> Void
    ) {
        // 1. 构造参数字典
        // 2. 发起POST请求到 dynamic/square/publish
        // 3. 处理返回结果
    }
}

3. 示例用法

let request = MomentsPublishRequest(
    uid: "12345",
    type: "1", // 0:文本 1:图片
    worldId: "67890",
    content: "今天很开心!",
    resList: ["image_url_1", "image_url_2"]
)
MomentsAPI.publishMoment(request: request) { result in
    switch result {
    case .success:
        print("发布成功")
    case .failure(let error):
        print("发布失败: \(error.localizedDescription)")
    }
}

4. 参数说明

参数名 类型 必填 说明
uid String 用户ID
type String 动态类型0文本/1图片
worldId String? 话题ID
content String 动态内容
resList [String]? 图片资源URL数组

5. 错误处理建议

  • 网络异常、参数校验、后端返回错误码均需处理
  • 建议统一封装 APIError 类型

6. 扩展建议

  • 支持 async/await
  • 可扩展为支持更多动态类型
  • 可结合项目网络层统一封装