创建Pin时PDKResponseObject与文档不符,无法获取Pin的ID及URL
获取Pinterest创建Pin后的ID/URL解决方案
我之前也碰到过这个SDK返回字段和文档不符的问题,不少开发者在社区里也反馈过类似情况,给你几个可行的解决思路:
优先升级SDK版本
旧版本的PDK确实存在返回数据不全的bug,建议你把iOS-PDK升级到最新版本,官方后续的更新已经修复了不少这类接口返回不一致的问题。创建成功后主动拉取最新Pin数据
如果升级后还是没解决,你可以在withSuccess回调里,用返回的Board ID调用getPinsOnBoard:fields:withSuccess:andFailure:方法,指定需要的字段(比如id,url,link,description),因为刚创建的Pin肯定是该Board下最新的一条,取返回列表的第一个元素就能拿到完整的Pin信息。示例代码大概是这样:[PDKClient getPinsOnBoard:boardId fields:@"id,url,link,description" withSuccess:^(PDKResponseObject *responseObject) { PDKPin *latestPin = responseObject.pins.firstObject; NSString *pinId = latestPin.identifier; NSURL *pinUrl = latestPin.url; // 这里处理拿到的信息 } andFailure:^(NSError *error) { // 处理错误 }];确认应用权限配置
检查你的Pinterest应用是否申请了write_public甚至write_private权限(根据你创建Pin的类型),权限不足会导致接口返回的字段被限制,只有基础的Board ID和描述。查看官方仓库的Issue
这个问题在Pinterest iOS SDK的仓库里有不少开发者反馈过,你可以去翻一下相关讨论,里面可能有官方人员的回复或者其他开发者分享的临时解决方案。
内容的提问来源于stack exchange,提问作者Stefano
相关产品推荐
相关产品推荐

