ruby-on-rails - 如何从本地 Rails 服务器调用 JDoodle API?
问题描述
我正在使用来自本地机器 Rails 服务器的带有有效 ID 和秘密的发布请求调用 JDoodle API。我没有得到想要的回应。如果我做错了,请建议我....
我的 Ruby 函数进行 api 调用
def run_Jddodle_API
require 'net/http'
require 'uri'
require 'json'
uri = URI.parse("https://api.jdoodle.com/v1/execute")
request = Net::HTTP::Post.new(uri)
request.content_type = "application/json; charset=UTF-8"
request.body = {
"clientId" => "ddc371fd*************c8efbae",
"clientSecret" => "4ee8e79a225***************************a8ee7f331aeeca603",
"script" => "<?php printf(\"hello RAJA\"); ?>",
"language" => "php",
"versionIndex" => "0"
}.to_json
req_options = { use_ssl: uri.scheme == "https", }
response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
http.request(request)
end
puts response.body
end
回应是
{"error":"Unauthorized Request","statusCode":401}
解决方案
尝试更改此行:
request.content_type = "application/json; charset=UTF-8"
对此:
request.content_type = "application/json"
推荐阅读
- flutter - 如何在屏幕上打印一条警告消息,告诉测验问题并以颤振结束
- javascript - JavaScript:除非我先单击实际按钮,否则“keydown”事件侦听器不起作用?
- docker - Question on Elasticsearch shards on Docker Swarm
- python - 给定 num = [3,4,2],target = 6,因为 nums[1] + nums[2] = 6,返回 [1,2]
- java - Angular 8 将 multipart/form-data 发送到 Java 后端
- javascript - 我们可以将哪个参数用于 window.WebChat.render WebChat 以便提供自定义 URL 参数?使用 Azure 机器人框架 Nodejs
- .htaccess - 尝试重定向 301 时的重复 URL
- excel - 循环导致 CPU 使用率高
- sql - 显示表中的所有重复值及其 ID (SQL)
- ajax - Spring Boot Ajax 调用不成功