如何在 URLSession 数据任务中设置变量?

How to set variables in URLSession data task?

我正在尝试使用两个文本框(用户名和密码)登录。我将这两个变量发送到 Web 服务以检查是否有用户名和密码可用。对于这两个值,我从 Web 服务中得到消息 "success" 或 "failure" 的响应。然后我正在获取该消息并使用该消息设置标志值。但是在 session 之后我没有得到那个标志值。它显示默认值 false。

问题是我想登录将使用 URLSession 和数据任务调用 Web 服务的按钮操作,但我无法设置标志。我可以使用 NSURL 同步请求来完成,但该代码已被弃用。

您可以查看登录按钮操作功能和网络服务功能代码的图像。 login button action web service function

提前谢谢你。

您使用方法webServiceCalledMethod的方式是错误的。与 URLSession 关联的任务是异步执行的。结果, isLogin 变量在执行 dataTask 之前返回。

不要从异步方法返回 Bool,而是使用闭包或委托模式来通知数据任务完成状态。