当前位置: 首页 > 面试题库 >

Java:通过HTTP Post在Ruby on Rails应用程序中创建新的“产品”

张逸清
2023-03-14
问题内容

在Android上使用Apache HttpClient,如何使用HttpPost将数据发送到RESTfull Ruby on Rails应用程序。

这是我的控制器:

# POST /products
  def create

    @product = Product.new(params[:product])

    respond_to do |format|
      if @product.save
        flash[:notice] = 'Product was successfully created.'
        format.html { redirect_to(@product) }
        format.xml  { render :xml => @product, :status => :created, :location => @product }
      else
        format.html { render :action => "new" }
        format.xml  { render :xml => @product.errors, :status => :unprocessable_entity }
      end
    end
  end

这是我的Java代码。我应该在URL名称中传递数据,还是必须将其设置在其他位置?(也许是httpost.setEntity吗?)最终,我将使用JSON,但现在我只想获取它,以便实际上可以在Rails中调用
create”方法。Rails正在获取POST,但从不执行“ create”方法中的任何代码

  HttpClient httpclient = new DefaultHttpClient();

  HttpPost httppost = new HttpPost("http://192.168.0.100:3000/products/new");

  HttpResponse response = httpclient.execute(httppost);

我很困惑,如果有人能指出我正确的方向,我将不胜感激。


问题答案:

我将以下内容添加到我的POST请求中,它就像一个魅力一样工作。

httppost.addHeader("Content-Type","application/json");


 类似资料:
  • 我刚刚安装了NetBeans 7.3.1。我只是试图创建一个新的Java应用程序,但每当我通过向导时,它会显示“Project folder exists and is not Empty”(项目文件夹存在且不是空的),不会再继续了。这是一个新项目,所以在NetBeans创建文件夹之前,文件夹是不存在的。 有什么想法吗?

  • 文件和文件夹设置 生成的应用程序文件夹将如下所示: 应用程序文件夹 应用程序配置存储在不同的位置,一些位于config文件夹中,如测试配置,一些存储在项目根目录中,如linting信息和构建信息。 CLI将应用程序特定的文件存储在src文件夹中,并将Angular 2特定的代码存储在src / app文件夹中。 CLI生成的文件和文件夹将遵循官方样式指南。 警告:CLI依赖配置文件中定义的某些设置

  • 我正试图通过Prestashop 1.7 web服务创建一个新产品。 我将以下XML发布到https://www.myshop.com/api/products.(我在https://www.myshop.com/api/products?schema=blank从空白方案创建了XML数据) 但我得到了以下错误: 正如您在发布的XML中看到的,price字段有一个值。此外,上述XML中包含的值对于

  • 问题内容: 嗨伙计, 如何在Eclipse中创建我的应用程序的exe文件?请提及要遵循的步骤。 谢谢 问题答案: 如果您只是想知道如何在Eclipse IDE外部运行应用程序,则不需要exe。在菜单中寻找“导出JAR”选项。 如果导出正确完成(生成了MANIFEST),则应该能够通过双击JAR文件或从命令行使用“ java -jar FILENAME.jar”来运行JAR文件。请注意,这是与平台无

  • 本文向大家介绍clojure 创建一个新的应用程序,包括了clojure 创建一个新的应用程序的使用技巧和注意事项,需要的朋友参考一下 示例 按照上述说明并安装Leiningen后,请运行以下命令来启动新项目: 这将使用该<project-name>文件夹中的默认Leiningen模板设置一个Clojure项目。莱宁根有多个模板,这些模板会影响项目的结构。最常见的是使用的模板“ app”,它添加了

  • 过去几天我一直在尝试在我的Windows PC上安装Rails。我从www.railsinstaller那里得到了这个包裹。org,它安装得很好。创建新应用程序时,我可以看到所有应用程序文件都已创建,然后出现以下错误: DL已弃用,请使用FIDLE从中获取gem元数据https://rubygems.org/..........正在解析依赖项。。。Gem::RemoteFetcher::Fetch