我使用Javafx Scene Builder 2.0制作了一个表单,我让表单工作,并将变量设置为表单元素值。我还创建了一个接收发布数据并将数据插入数据库的PHP脚本。
我需要一些关于通过http post将javafx表单数据发送到我的php脚本的帮助。
这是我到目前为止的java代码。
主要的JAVA
package sample;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));
primaryStage.setTitle("Orbis Cob Submit");
primaryStage.setScene(new Scene(root, 800, 600));
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
Controller.java
package sample;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.fxml.FXML;
import javafx.scene.control.*;
import javafx.scene.text.Text;
import java.io.IOException;
import java.io.IOException;
import java.util.Observable;
public class Controller {
//Send Vars
private String sendDataType;
private String sendCobTarget;
private String sendVendor;
private String sendCobName;
private String sendDealerID;
private String sendJobType;
private String sendStartDate;
private String sendEndDate;
private String sendAmount;
private String sendCost;
private String sendDataDescription;
private DataBase db = new DataBase();
//Data list for drop downs
ObservableList<String> dataTypeList = FXCollections.observableArrayList("BK", "BR", "DB", "DEQ", "FI", "MB", "OB", "SAT", "SURN");
ObservableList<String> cobTargetList = FXCollections.observableArrayList("Sales", "Services", "Both");
ObservableList<String> vendorList = FXCollections.observableArrayList("SJO", "OCZ","Inhouse");
ObservableList<String> jobTypeList = FXCollections.observableArrayList("Mail", "Digital");
//Form Elements
@FXML
public ChoiceBox dataType;
@FXML
public ChoiceBox cobTarget;
@FXML
public ChoiceBox vendor;
@FXML
public Button button;
@FXML
public Text message;
@FXML
public TextField cobName;
@FXML
public TextField dealerID;
@FXML
public ChoiceBox jobType;
@FXML
public DatePicker startDate;
@FXML
public DatePicker endDate;
@FXML
public TextField sentAmount;
@FXML
public TextField cost;
@FXML
public TextField dataDescription;
@FXML
private void initialize(){
dataType.setItems(dataTypeList);
cobTarget.setItems(cobTargetList);
vendor.setItems(vendorList);
jobType.setItems(jobTypeList);
button.setOnAction(e -> {
this.sendDataType = dataType.getValue().toString();
this.sendCobTarget = cobTarget.getValue().toString();
this.sendVendor = vendor.getValue().toString();
this.sendCobName = cobName.getText();
this.sendDealerID = dealerID.getText();
this.sendJobType = jobType.getValue().toString();
this.sendStartDate = startDate.getValue().toString();
this.sendEndDate = endDate.getValue().toString();
this.sendAmount = sentAmount.getText();
this.sendCost = cost.getText();
this.sendDataDescription = dataDescription.getText();
//Send Field Data to HTTP POST REQUEST
});
}
}
您最好的选择是使用像unirest这样的库,它使发送HTTP(S)请求变得更容易。
你这样使用它:
Unirest.post("http://httpbin.org/post")
.field("sendDataType", dataType.getValue().toString())
.field("sendCobTarget", cobTarget.getValue().toString())
.field("sendDataType", dataType.getValue().toString())
.field("sendCobTarget", cobTarget.getValue().toString())
.field("sendVendor", vendor.getValue().toString())
.field("sendCobName", cobName.getText())
.field("sendDealerID", dealerID.getText())
.field("sendJobType", jobType.getValue().toString())
.field("sendStartDate", startDate.getValue().toString())
.field("sendEndDate", endDate.getValue().toString())
.field("sendAmount", sentAmount.getText())
.field("sendCost", cost.getText())
.field("sendDataDescription", dataDescription.getText())
.asJson();
您需要将每个字段设置为要发送的值。
本文向大家介绍Android使用httpPost向服务器发送请求的方法,包括了Android使用httpPost向服务器发送请求的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Android使用httpPost向服务器发送请求的方法。分享给大家供大家参考,具体如下: 可以直接用的完整类。 希望本文所述对大家Android程序设计有所帮助。
axios请求点击控制器上的url,但将空值设置到POJO类中,当我使用chrome中的开发人员工具时,有效负载包含数据。我做错了什么? Axios POST请求: 浏览器响应: 过帐多部分/表单数据时出错。Content-Type标头缺少边界 谁能解释一下如何设置边界或者我如何使用Axios发送表单数据。
我有一个本地运行的服务器,它有一个内置的rest api。要通过这个api登录,我们需要将用户名,密码和组织作为参数发送到urllocalhost:8090/ehr/api/v1/login通过POST方法和服务器返回一个auth令牌作为响应。当我尝试直接这样做时,无需用户通过以下代码从表单输入: 它工作得非常好,auth token作为json返回,但如果我尝试通过以下代码通过用户表单输入执行相
javax.net.ssl.sslhandShakeException:收到致命警报:在com.ibm.jsse2.O.A(O.java:8)在com.ibm.jsse2.sslsocketimpl.B(SSLSocketimpl.java:40)在com.ibm.jsse2.sslsocketimpl.A(SSLSocketimpl.java:554)在com.ibm.jsse2.sslsock
我对邮递员有意见... 但是,当我尝试以 raw(json) 格式的正文发送相同的请求时,我得到了这个: 我试图通过Angular 5将数据发送到Drupal 8后端。 谢谢你!
对传递的 URL 发出一个 POST 请求。 使用 XMLHttpRequest web api 对给定的url 发出一个 post 请求。 用 setRequestHeader 方法设置 HTTP 请求头的值。 通过调用给定的 callback 和 responseText 来处理 onload 事件。 通过运行提供的 err 函数,处理onerror事件。 省略第三个参数 data ,不发送数