首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >NSIS inetc::put,无法上传文件:“尝试设置内容类型的标题.”

NSIS inetc::put,无法上传文件:“尝试设置内容类型的标题.”
EN

Stack Overflow用户
提问于 2014-12-05 23:36:43
回答 1查看 516关注 0票数 1

我试图使用inetc::put将样式层描述符(.sld)上载到具有RESTful端点的本地GeoServer实例。我遇到一个错误,说我需要设置内容类型,即使我是。

代码语言:javascript
运行
复制
inetc::put /silent /header "Content-type: application/vnd.ogc.sld+xml" "http://username:password@localhost:8080/geoserver/rest/styles/MyNewStyle" "$INSTDIR/MyNewStyle.sld"
Pop $0
DetailPrint "Uploading styled layer descriptor: $0"

这将返回一个HTTP 400 (请求错误)。服务器日志有以下内容:

代码语言:javascript
运行
复制
ERROR [geoserver.rest] - Could not determine format. Try setting the Content-type header.
org.geoserver.rest.RestletException
at org.geoserver.rest.AbstractResource.getFormatPostOrPut(AbstractResource.java:173)
at org.geoserver.rest.ReflectiveResource.handlePost(ReflectiveResource.java:116)
at org.restlet.Finder.handle(Finder.java:296)
at org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:37)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at org.geoserver.rest.RESTDispatcher$1.handle(RESTDispatcher.java:204)
at com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:86)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
[...]

Inetc的文档没有表明/headerinetc::postinetc::put的可用选项,这一点没有帮助。但是,我已经确认可以使用/headerinetc::post请求设置内容类型,以在GeoServer中创建工作区和样式。inetc::put有一些不同之处,要么需要不同的语法,要么就是没有正确实现。

我还没有找到一个执行inetc::put的人设置请求的内容类型的例子。我已经尝试过将/header放在URLlocal_file之前、之间和之后。我可以使用Firefox附加的“海报”和cURL来执行PUT。但这不适用于Inetc。

我正在使用Inetc的最新版本,它可以从我上面共享的链接中获得。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-07 17:10:57

我只是看了一下源代码,在执行PUT时,在添加调用方指定的头部后,INetC将在HttpAddRequestHeaders(..., HTTP_ADDREQ_FLAG_ADD|HTTP_ADDREQ_FLAG_REPLACE)中添加“Content:octet”和“Content:%size%”。

您应该作者添加“内容类型”标题在其他标题之前,以解决这个问题.

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27326415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档