所有
我正在开发一个侦听具有JSON有效负载的帖子的Web服务。 我在Visual Studio 2015中创建了一个Web应用程序项目,它提供了一个存根的API控制器。当我向POST处理程序发送测试时,即使我发送JSON有效负载,控制器中接收的值也为空。
我做错了什么,这里?
我怀疑我需要某种类型的绑定,在我的POST命名为" value",但由于我收到原始JSON有效负载,我无法真正影响绑定。
答案 0 :(得分:1)
创建一个模型来存储正在发送的数据。
override func viewDidLoad() {
super.ViewDidLoad()
myImage.layer.shadowColor = UIColor.black.cgColor
myImage.layer.shadowOpacity = 1
myImage.layer.shadowOffset = CGSize.zero
myImage.layer.shadowRadius = 10
myImage.layer.shadowPath = UIBezierPath(rect: myImage.bounds).cgPath
myImage.layer.shouldRasterize = false
myImage.layer.cornerRadius = 10
myImage.clipsToBounds = true
}
更新控制器操作以接受有效负载
public class Payload {
public string type { get; set;}
public string id { get; set;}
public long creates_at { get; set;}
public long updated_at { get; set;}
public string service_type { get; set;}
public string[] topics { get; set;}
public string url { get; set;}
public bool active { get; set;}
public string hub_secret { get; set;}
}
这也假设您使用默认的基于约定的路线temaplate public class ValuesController : ApiController {
//POST api/values
public void Post([FromBody] Payload value) {...}
}
答案 1 :(得分:0)
你需要在你的行动/方法中加入[System.Web.Http.HttpPost]属性