Ruby on rails QuickBooks API创建客户POST请求失败

Ruby on rails QuickBooks API创建客户POST请求失败,ruby-on-rails,api,post,request,quickbooks-online,Ruby On Rails,Api,Post,Request,Quickbooks Online,我想通过quickbooks API创建一个客户 第一件事GET请求一切正常。 但是当我尝试一个帖子时,我得到了一个请求 错误代码=“100”>一般身份验证错误 这是Oauth2令牌=> at = OAuth2::AccessToken.new(::QB_OAUTH2_CONSUMER, acces_token) 这是新的客户=> new_customer = { "BillAddr": { "Line1": "10 rue Des Champs", "C

我想通过quickbooks API创建一个客户

第一件事GET请求一切正常。

但是当我尝试一个帖子时,我得到了一个请求

错误代码=“100”>一般身份验证错误

这是Oauth2令牌=>

at = OAuth2::AccessToken.new(::QB_OAUTH2_CONSUMER, acces_token)
这是新的客户=>

new_customer =

  {

   "BillAddr": {

     "Line1": "10 rue Des Champs",

     "City": "Paris",

     "Country": "FRANCE",

     "CountrySubDivisionCode": "FR",

     "PostalCode": "75020"

   },

   "Notes": "Just a test",

   "Title": "Mr",

   "GivenName": "John",

   "MiddleName": "",

   "FamilyName": "Doe",

   "Suffix": "",

   "FullyQualifiedName": "John Doe",

   "CompanyName": "DonwtownLA",

   "DisplayName": "DonwtownLA",

   "PrimaryPhone": {

     "FreeFormNumber": "0123456789"

   },

   "PrimaryEmailAddr": {

     "Address": "johndoe@gmail.com"

   }

  }
这是URL=>

at.post("https://quickbooks.api.intuit.com/v3/company/#{realm_id}/customer")
任何人都可以帮我,我看不出我做错了什么


提前谢谢。

请用邮递员打电话。下面的博客文章应该会有所帮助。

请检查您是否将内容类型作为“application/json”传递。

好的,我知道了

以下是从Quickbooks控制器创建用户的代码

def create_qb_customer
    data =
    {
      "Notes": "This is from Darta",
      "GivenName": "#{params[:first_name]}",
      "FamilyName": "#{params[:last_name]}",
      "CompanyName": "#{params[:company]}",
   "PrimaryEmailAddr": {
     "Address": "#{params[:email]}"
   }
    }
  realm_id = QbToken.last.realm_id
  url = URI("https://sandbox-quickbooks.api.intuit.com/v3/company/#{realm_id}/customer/")
  http = Net::HTTP.new(url.host, url.port)
  http.use_ssl = true
  request = Net::HTTP::Post.new(url)
  request["Content-Type"] = 'application/json'
  request["Authorization"] = "Bearer #{QbToken.last.serial}"
  request["Cache-Control"] = 'no-cache'
  request["Postman-Token"] = 'XXXXXX-cf4c-XXXXX-8d7c-XXXXXXXXX'
  request.body = data.to_json
  response = http.request(request)
  p response.read_body
  flash.notice = "Your QuickBooks customer is successfully created !"
  redirect_to list_all_project_path
  end

谢谢你的回复,为什么我要用邮递员呢?我像这样传递数据=>at.post(url,data)Thanks我尝试了一下Postman我得到了完全相同的错误=>General身份验证错误AuthenticationErrorGeneral:Internal Server error,statusCode:500 Postman是API测试的标准工具。这就是为什么我们建议使用它。我知道你已经提出了支持票。请分享邮递员屏幕截图。您好,谢谢您的回复!这是来自postman的2个屏幕截图,一个成功地发出GET请求,另一个发出POST请求时出错。谢谢乔丹,不客气。只是想知道问题是否与缺少的内容类型或其他内容有关?谢谢,玛纳斯