首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Wiremock :如何使用API上传文件到文件夹__files

Wiremock :如何使用API上传文件到文件夹__files
EN

Stack Overflow用户
提问于 2017-09-20 15:56:23
回答 2查看 4.8K关注 0票数 9

wiremock的文档说,多亏了这段代码,我们可以模拟一个检索文件的请求:

{ "request": { "method": "GET", "url": "/body-file" }, "response": { "status": 200, "bodyFileName": "path/to/myfile.xml" } }

但现在我必须找到一种真正上传文件的方法,否则我的请求会有500个错误。

代码语言:javascript
复制
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"/>
    <title>Error 500 </title>
</head>
<body>
    <h2>HTTP ERROR: 500</h2>
    <p>Problem accessing /body-file. Reason:

        <pre>    java.lang.RuntimeException: java.io.FileNotFoundException: /wiremock-standalone/./__files/path/to/myfile.xml (No such file or directory)</pre>
    </p>
    <hr />
    <i>
        <small>Powered by Jetty://</small>
    </i>
</body>

精度:由于我们的基础设施限制,我不能直接上传文件。

EN

回答 2

Stack Overflow用户

发布于 2018-10-31 00:00:11

最近的Wiremock版本具有管理存根文件的端点(请参阅https://github.com/tomakehurst/wiremock/blob/2.19.0/src/main/java/com/github/tomakehurst/wiremock/admin/AdminRoutes.java#L77)

您可以将带有PUT的文件上传到/__admin/files/{filename}。它们存储在${pwd}/__files下。

票数 12
EN

Stack Overflow用户

发布于 2018-05-01 07:17:45

一种解决方法是使用"body"参数,如下所示:

代码语言:javascript
复制
{
    {
    "request": {
        "method": "GET",
        "url": "/body-file"
    },
    "response": {
        "status": 200,
        "body": "<example><node Id='1' Action='Insert' /></example>"
    }
}

(请注意'1'"1"中的单引号-您需要转义那些使用\"1\"的引号。

请参阅http://wiremock.org/docs/stubbing -指定响应正文部分。

如果您需要JSON有效负载,使用"jsonBody"参数会更好:

代码语言:javascript
复制
{
    {
    "request": {
        "method": "GET",
        "url": "/body-file"
    },
    "response": {
        "status": 200,
        "jsonBody": 
            { 
              "field1": "value1", 
              "field2" : "value2" 
            }
    }
}

另一个很好的特性是,引用:

已经创建的

存根映射可以通过在Java语言中调用WireMock.saveAllMappings或向http://<host>:<port>/__admin/mappings/save发送一个带有空体的请求来持久化到映射目录中。

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

https://stackoverflow.com/questions/46316393

复制
相关文章

相似问题

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