在Jmeter中发布数据时响应422错误

在Jmeter中发布数据时响应422错误,jmeter,postman,load-testing,Jmeter,Postman,Load Testing,我在通过JMeter中的POST方法传递JSON时遇到问题。我的所有实例都是正确的,但为什么它会向我显示错误“instance cannot be null”。我已经在《邮递员》上测试过了,它是有效的,但当我使用JMeter时却没有。你能帮我解决这个问题吗?谢谢 JSON: { "$class": "model.Koleksi", "koleksiId": "003", "nama": "Koleksi 9", "jumlah": 9, "kondisi"

我在通过JMeter中的POST方法传递JSON时遇到问题。我的所有实例都是正确的,但为什么它会向我显示错误“instance cannot be null”。我已经在《邮递员》上测试过了,它是有效的,但当我使用JMeter时却没有。你能帮我解决这个问题吗?谢谢

JSON:

{
    "$class": "model.Koleksi",
    "koleksiId": "003",
    "nama": "Koleksi 9",
    "jumlah": 9,
    "kondisi": "BAIK",
    "kategori": "Geografika",
    "status": "citrus-fruit-food-fruit-oranges-207085.jpg",
    "keterangan": "Sakti jow",
    "tanggalbentuk": "2020-03-12T12:05:58.113Z",
    "owner": "resource:model.Organisasi#K001",
    "issuer": "resource:model.Organisasi#O001"
 }

错误:

{"error":{"statusCode":422,"name":"ValidationError","message":"The `Koleksi` instance is not valid. Details: `koleksiId` can't be blank (value: undefined); `nama` can't be blank (value: undefined); `jumlah` can't be blank (value: undefined); `kondisi` can't be blank (value: undefined); `kategori` can't be blank (value: undefined); `status` can't be blank (value: undefined); `keterangan` can't be blank (value: undefined); `tanggalbentuk` can't be blank (value: undefined); `owner` can't be blank (value: undefined); `issuer` can't be blank (value: undefined).","details":{"context":"Koleksi","codes":{"koleksiId":["presence"],"nama":["presence"],"jumlah":["presence"],"kondisi":["presence"],"kategori":["presence"],"status":["presence"],"keterangan":["presence"],"tanggalbentuk":["presence"],"owner":["presence"],"issuer":["presence"]},"messages":{"koleksiId":["can't be blank"],"nama":["can't be blank"],"jumlah":["can't be blank"],"kondisi":["can't be blank"],"kategori":["can't be blank"],"status":["can't be blank"],"keterangan":["can't be blank"],"tanggalbentuk":["can't be blank"],"owner":["can't be blank"],"issuer":["can't be blank"]}},"stack":"ValidationError: The `Koleksi` instance is not valid. Details: `koleksiId` can't be blank (value: undefined); `nama` can't be blank (value: undefined); `jumlah` can't be blank (value: undefined); `kondisi` can't be blank (value: undefined); `kategori` can't be blank (value: undefined); `status` can't be blank (value: undefined); `keterangan` can't be blank (value: undefined); `tanggalbentuk` can't be blank (value: undefined); `owner` can't be blank (value: undefined); `issuer` can't be blank (value: undefined).\n    at /home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:400:12\n    at Koleksi.<anonymous> (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/validations.js:578:11)\n    at Koleksi.next (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/hooks.js:93:12)\n    at Koleksi.<anonymous> (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/validations.js:575:23)\n    at Koleksi.trigger (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/hooks.js:83:12)\n    at Koleksi.Validatable.isValid (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/validations.js:541:8)\n    at /home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/dao.js:396:9\n    at doNotify (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:155:49)\n    at doNotify (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:155:49)\n    at doNotify (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:155:49)\n    at doNotify (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:155:49)\n    at Function.ObserverMixin._notifyBaseObservers (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:178:5)\n    at Function.ObserverMixin.notifyObserversOf (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:153:8)\n    at Function.ObserverMixin._notifyBaseObservers (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:176:15)\n    at Function.ObserverMixin.notifyObserversOf (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:153:8)\n    at Function.ObserverMixin._notifyBaseObservers (/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer-rest-server/node_modules/loopback-datasource-juggler/lib/observer.js:176:15)"}}
{“error”:{“statusCode”:422,“name”:“ValidationError”,“message”:“Koleksi”实例无效。详细信息:`koleksiId`不能为空(值:未定义);`nama`不能为空(值:未定义);`jumlah`不能为空(值:未定义);`kondisi`不能为空(值:未定义);`kategori`不能为空(值:未定义);`status`不能为空(值:未定义);`keterangan`不能为空(值:未定义);`tanggalbentuk`不能为空(值:未定义);`owner`不能为空(值:未定义);`issuer`不能为空(值:未定义);`details:{“上下文”:“Koleksi”,“代码”:{“Koleksid”:[“在场”],“nama:[“在场”],“朱姆拉”:“在场”],“kondisi”:[“在场”],“卡蒂戈里”:[“在场”],“状态”:[“在场”],“凯特兰根”:[“在场”],“唐加尔本图克”:[“在场”],“所有者”:[“在场”],“发行人”:[“在场”],“消息”:{“Koleksii”:[“不能为空”],“纳玛”:[“不能为空”],“朱姆拉”:[“不能为空”,“康迪西”:“不能为空”;“卡蒂戈里”:“不能为空”;“不能为空”;“状态不能为空”,“keterangan”:[“不能为空”],“tanggalbentuk”:[“不能为空”],“所有者”:[“不能为空”],“颁发者”:[“不能为空”]},“堆栈”:“验证错误:Koleksi`实例无效。详细信息:`koleksiId`不能为空(值:未定义);`nama`不能为空(值:未定义);`jumlah`不能为空(值:未定义);`kondisi`不能为空(值:未定义);`kategori`不能为空(值:未定义);`status`不能为空(值:未定义);`keterangan`不能为空(值:未定义);`tanggalbentuk`不能为空(值:未定义);`owner`不能为空(值:未定义);`issuer`不能为空(值:未定义).\n在/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/dao.js:400:12\n在Koleksi。(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/validations/lib/validations.js.js:578:11)\n在(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/hooks.js:93:12)\n在Koleksi。(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/lib/validations/lib/validations.js.js:575:23(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/hooks.js:83:12)\n位于Koleksi.validable.isValid(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/composer rest/loopback datasource juggler/lib/validations.js/js/js\n位于/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/dao.js:396:9\n位于doNotify(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loop-datasource juggler/lib/observer.js:155:49)\n位于doNotify)(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/observer.js:155:49)\n在doNotify(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/lib/observer/observer.js:155:49)\n(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/observer.js:155:49)\n at Function.observer mixin.\u notifybaseobsers(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/composer rest server/node_modules/node/composer rest/node_mod\n位于Function.ObserverMixin.notifyObserversOf(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/observer.js:153:8)\n位于Function.observer mixin.\u notifybaseobsers(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/loopback datasource juggler/lib/observer.js:176:15)\n在Function.observer mixin.notifyobserver(/home/sachi/.nvm/versions/node/v8.17.0/lib/node_modules/composer rest server/node_modules/composer/node_-server/node_-server/composer rest-modules/node_-\n在Function.ObserverMixin.\u notifyBaseObservers(/home/sachi/.nvm/versions/node/v8.17.0/lib/node\u modules/composer rest server/node\u modules/loopback datasource juggler/lib/observer.js:176:15)}

我认为您的JSON在这里是错误的,键名应该是
“class”
而不是
“$class”
。请您仔细检查一下

正确的JSON可能是:

{
    "class": "model.Koleksi",
    "koleksiId": "003",
    "nama": "Koleksi 9",
    "jumlah": 9,
    "kondisi": "BAIK",
    "kategori": "Geografika",
    "status": "citrus-fruit-food-fruit-oranges-207085.jpg",
    "keterangan": "Sakti jow",
    "tanggalbentuk": "2020-03-12T12:05:58.113Z",
    "owner": "resource:model.Organisasi#K001",
    "issuer": "resource:model.Organisasi#O001"
 }

这是一个错误的请求错误。错误
'instance cannot be null'
实际上是为请求正文(精确的键值对)验证而显示的。

很可能是您没有发送正确的标头和值,因此服务器无法“理解”您的请求

尝试将添加作为发送上述JSON的HTTP请求采样器的子级,并将其配置为发送上述标头,如:


一般来说,如果请求在Postman中运行良好,您应该能够使用JMeter记录它,只需在Postman中执行您的请求—JMeter将捕获带有所有必要头的请求,并且您将能够重播它