使用 Alamofire 删除附加在 URL 末尾的 ?=
Posted
技术标签:
【中文标题】使用 Alamofire 删除附加在 URL 末尾的 ?=【英文标题】:Remove ?= appended at the end of URL using Alamofire 【发布时间】:2018-01-15 07:01:48 【问题描述】:即使在 Alamofire 中的请求中没有添加任何参数,如何删除附加在任何 url 上的 ?=?
样品请求:
Alamofire.request(url, method: .get, parameters: parameters, headers: createHeader()).validate(statusCode: 200..<300).responseJSON
response in
switch response.result
case .success(let data):
print(“success”)
break
case .failure(let error):
print(“failure”)
break
其中参数:[String : String] = ["" : ""]
createHeader() 为诸如授权、接受语言等标头返回一个字典
【问题讨论】:
检查url字符串是否包含?=
。如果是,则删除这些字符。
实际上我发送给 Alamofire 请求的 url 不包含 ?= 但 Alamofire 附加了它。所以我想知道我可以从哪里删除它。
您能否发布您在 Alamofire 中提出的示例请求,以便我们更好地帮助您?
@AceRivera 请检查我的编辑
检查我的答案。谢谢
【参考方案1】:
您正在传递参数。在这种情况下为空参数,["" : ""]。 因此,参数不为零
let parameters = ["" : ""] // this is not nil
["" : ""] 是 Dictionary ([String : String]) 的一个实例,其数据为空。 这就是请求仍然附加的原因?=
【讨论】:
感谢您的回答。我会检查并更新你。 :) 好的。如果你真的没有要传递的参数,你可以在 params 中传递一个“nil”,或者只是在代码中省略它。该参数不是函数所必需的,默认值为 nil check Alamofire.swift (func request) 谢谢王牌!!有效。如果我的问题是对的,请点赞。以上是关于使用 Alamofire 删除附加在 URL 末尾的 ?=的主要内容,如果未能解决你的问题,请参考以下文章
使用 PHP 进行 SEO 的蛞蝓 - 将名称附加到 URL 的末尾