我将AngularJS用作前端框架,并尝试将多部分表单对象发送到服务器。我已经实现了类似于this的东西,也尝试使用jquery ajax。在我遇到这个奇怪的问题之前,它一直很好。有些字段中有双引号(“),当通过xhr发送时,其被编码为%22,如下所示
------WebKitFormBoundaryMNi7vhaHdtkt8JT8
Content-Disposition: form-data; name="some id__%22()"
56
------WebKitFormBoundaryMNi7vhaHdtkt8JT8
Content-Disposition: form-data; name="another stupid currency@%22<>"
566
------WebKitFormBoundaryMNi7vhaHdtkt8JT8
Content-Disposition: form-data; name="another stupid currency@%22<>Currency"
ar-AE
------WebKitFormBoundaryMNi7vhaHdtkt8JT8
实际的字段名称为some id__"()
,依此类推。我用angular和jquery xhr得到了这种行为。猜猜这是编码的惯例,在这方面也找不到任何可防止的选择。但是当multer解析表单时,它只是不解码名称部分。因此,我得到的字段名称中包含%22。我也看不到任何启用它的选项。
任何有用的东西,都深表感谢!预先感谢。