Tag: servicestack

如何使用SYNCHRONOUS页面POST从HTML表单发送复杂的JSON对象?

我的服务器正在使用ServiceStack,并希望收到一些这样的数据: { Customer: { Company: “TheCompany”, RegionCode: “AU_NSW” }, Name: { First: “Jimi”, Last: “Hendrix” } } 我有一个包含这些字段的表单,我可以使用JQuery轻松获取数据,创建嵌套的JSON对象并使用$ .post发送它。 但我不想将其作为AJAX发送,因为我希望整个页面都提交,然后浏览器将服务器的响应显示为新页面。 只是经典的forms发布行为。 我已经尝试将复杂的json作为字符串嵌入隐藏的表单字段中 – 没有雪茄。 我还查看了ServiceStack是否有任何命名约定,以便我可以调用我的表单字段“Name [First]”并让ServiceStack将正确的值放在正确的嵌套结构中 – 也就是没有雪茄。 有没有办法可以在表单发送数据之前将JSON对象附加到表单的POST数据? 要么 有没有办法我可以使用jQuery进行整页提交(所以我可以发送一个复杂的嵌套JSON,同时仍然有正常的“页面提交”行为)?

将数据发送到ServiceStack RESTful服务,获取“访问被拒绝”

我使用ServiceStack构建了一个RESTful服务,它将数据发送到数据库。 我在本地进行了测试,效果很好。 当我将它部署到服务器并运行相同的代码(这是一个jQuery $ .ajax调用)时,我得到一个“访问被拒绝”错误。 我已经使用插件在我的ServiceStack配置中设置了CORS,如此处所述 。 我还在我的ajax调用中将crossDomain设置为true。 我想不出还有什么可以让它发挥作用,而且老实说我不确定这个错误被扔到哪里。 我已经逐步完成了Javascript,它甚至没有进入ajax调用的’failure’块,错误在此之前抛出……我正在使用IE9进行测试,如果那是相关的……? 知道可能会发生什么吗? 这是我的ServiceStack POST方法: public CitationResponse Post(Citation citation) { var response = new CitationResponse { Accepted = false }; if (string.IsNullOrEmpty(citation.ReportNumber)) { response.Accepted = false; response.Message = “No data sent to service. Please enter data in first.”; return response; } try { response.ActivityId = Repository.CreateCitation(citation.ReportNumber, citation.ReportNumber_Prefix, […]