通过查看页面中的JavaScript,我注意到有一个JavaScript Blob被创建并且JsON内容被附加到那个,然后以多部分形式提交,并带有以下脚本 –
我尝试使用以下代码用ruby中的rest-clIEnt gem模拟这个 –
namespace :materialize do task :connect => :environment do base_uri = "https://imatsandBox.materialise.net/web-API/cartitems/register" request = '{ "cartItems":[ { "toolID":"d65e1eca-7adf-453d-a3bb-eb051fffb567","MyCartItemReference":"some reference","modelID":"62352bab-d490-410c-851d-bc62e056e82a","modelfilename":"","fileUnits":"mm","fileScaleFactor":"1","materialID":"035f4772-da8a-400b-8be4-2dd344b28ddb","finishID":"bba2bebb-8895-4049-aeb0-ab651cee2597","quantity":"1","xDimMm":"12","yDimMm":"159.94","zDimMm":"12","volumeCm3":"2.0","surfaceCm2":"100.0","iMatAPIPrice": "25.0","mySalesPrice": "26.0",} ],"currency":"EUR" }'file.open('request','wb') do |f| f.write requestend response = RestClIEnt.post base_uri,{:data => request,headers: {:multipart => true,accept: :Json}} puts response.request endend
我总是得到的反应机构 –
"{\"error\":{\"message\":\"Wrong request body. Check if all parameters set correctly\",\"code\":401},\"cartItems\":[]}"
我究竟做错了什么?
解决方法 你得到401,这意味着你的请求没有被授权.我认为您需要通过您的请求传递凭据.查看页面底部的注释,将注册的电子邮件地址传递给demo API:https://imatsandbox.materialise.net/api/demo/
看起来你需要这样做:
https://i.materialise.com/web-API/materials?user=<your registered email address here>总结
以上是内存溢出为你收集整理的ruby-on-rails – Javascript Blob的Ruby rest-client API请求全部内容,希望文章能够帮你解决ruby-on-rails – Javascript Blob的Ruby rest-client API请求所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)