Tag: post

使用Java在Play Framework 2.2.x中处理POST请求?

我开始使用Play 2.2.x,我正在尝试处理POST请求,我的理解是我不需要在conf / routes文件中指定参数,而是使用play的DynamicForm类提取查询,如下所示: import play.*; import play.api.data.Form; import play.data.DynamicForm; import play.mvc.*; import views.html.*; public static Result hello() { DynamicForm requestData = Form.form().bindFromRequest(); String firstname = requestData.get(“firstname”); String lastname = requestData.get(“lastname”); return ok(“Hello ” + firstname + ” ” + lastname); } 但是,我在Eclipse中遇到此错误: “The method form() is undefined for the type Form 当我执行“play run”时,我得到了这个编译器: error: […]

使用HttpURLConnection到PHP的POST文件

我已经引用了这个链接使用POST和HttpURLConnection发送文件 使用以下代码,我正在尝试将文件POST到本地PHP服务器。 它总是在我的PHP文件中返回文件大小0 public class FileUpload2 { String CRLF = “\r\n”; /** * @param args * @throws Exception */ public static void main(String[] args) throws Exception { new FileUpload2().put(“http://localhost/test/test.php”); } public void put(String targetURL) throws Exception { String BOUNDRY = “==================================”; HttpURLConnection conn = null; try { // These strings are sent in the request […]

将授权的curl -u post请求与JSON数据转换为RestTemplate等效项

我正在使用github api使用curl命令创建存储库,如下所示,它工作正常。 curl -i -u “username:password” -d ‘{ “name”: “TestSystem”, “auto_init”: true, “private”: true, “gitignore_template”: “nanoc” }’ https://github.host.com/api/v3/orgs/Tester/repos 现在我需要通过HttpClient执行相同的上面的url,我在我的项目中使用RestTemplate 。 我之前使用过RestTemplate ,我知道如何执行简单的url但不知道如何使用RestTemplate将上述JSON数据发布到我的url – RestTemplate restTemplate = new RestTemplate(); HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_JSON); // Create a multimap to hold the named parameters MultiValueMap parameters = new LinkedMultiValueMap(); parameters.add(“username”, username); parameters.add(“password”, password); // Create the […]

如何让RESTful java客户端在Openstack上发送GET / POST请求?

我想发一个POST请求来从Openstack获取令牌。 我可以通过输入url:“http://*******/v2.0/tokens”和数据使用Mozilla上的插件来实现 { “auth”: { “tenantName”: “admin”, “passwordCredentials”: { “username”: “xxxxxx”, “password”: “xxxxxx” } } } 如何通过JAVA程序做到这一点? 直到现在我已经尝试了以下代码,但没有成功。 package rest.openstack; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; public class NetClientGet { // http://localhost:8080/RESTfulExample/json/product/get public static void main(String[] args) { try { URL url = new URL(“http://***.**.**.**:5000/v2.0/tenants/”); //url for openstack HttpURLConnection […]

如何通过GET / POST发送安全密码?

我想用Java发送HTTPS请求并在GET或POST数据中发送密码。 它安全吗? 我可以将密码作为纯文本放在POST / GET字段中,当我使用https时,它会被保护吗? 或者我应该做更多的事情?

如何使用POST上传二进制数据

我的代码中有这样的东西: String boundary = “thisIsMyBoundaryString”; StringBuilder body = new StringBuilder(); … byte[] data = bos.toByteArray(); body.append(new String(data)); body.append(“\r\n–” + boundary + “–\r\n”); String entity = body.toString(); 我正在构建一个POST请求,需要插入一些二进制数据(JPEG压缩位图)。 附加byteArray后,我想追加newLine和边界字符串, 但是StringBuilder被破坏了 – 似乎来自添加边界的字节 从那时起就变得错位了 并且它们不再被解释为我的原始字符串,而是作为一些随机字符。 这是发生在这里的事吗? 我该如何解决这个问题? 也许我应该在追加边界之前在byteArray中添加一个填充字节? 将二进制数据添加到POST请求的正确方法是什么? 请注意,此处不能使用Base64编码。 [编辑] 解决方案是使用MultipartEntity来发出此类请求 并忘记手动添加边界。 这是相关的代码片段: FileBody bin = new FileBody(new File(Environment.getExternalStorageDirectory() + “/” + FILE_NAME)); MultipartEntity entity = […]

HTTP Node.js Java API

我正在创建一个Node.js Java后端。 Node.js中间件从Android应用程序接收HTTP请求,然后将其中继到Java代码。 选择此技术的原因是从头开始创建高度可扩展的后端。 我希望Node.js api接收HTTP请求,将其传递给后端的Java端,Java代码进行计算,将结果发送回Node.js API,然后通过发送结果完成该过程回到Android应用程序。 我可以接收和解析HTTP请求: var BodyParser = require(‘body-parser’); var Express = require(‘express’); var JavaClient = require(‘./NodeJavaBridge.js’); var JavaClientInstance = new JavaClient(); var app = Express(); ///// Receive message logic \\\\\ app.use(BodyParser.json()); app.post(‘/’, function (request, response) { var task = request.body; response.writeHead(200, { ‘content-type’: ‘text/plain’ }); var otherObject = { SomeData: 1234 […]

通过Java中的Socket处理POST请求

我正在尝试使用Socket处理Java中的简单POST请求。 我可以收到请求标头并回答请求没有任何问题,但我当然无法得到请求的正文。 我在某处读到了我需要打开第二个InputStream来实现这个目标,但这对我来说并没有多大意义。 您有关于如何获取请求正文的任何​​提示吗? 这是我基本上用来获取标题: BufferedReader in = new BufferedReader(new InputStreamReader( clientSocket.getInputStream())); char[] inputBuffer = new char[INPUT_BUFFER_LENGTH]; int inputMessageLength = in.read(inputBuffer, 0, INPUT_BUFFER_LENGTH); String inputMessage = new String(inputBuffer, 0, inputMessageLength); 所以,我得到的信息是这样的: POST / HTTP/1.1 User-Agent: Java/1.8.0_45 Host: localhost:5555 Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 但我无法获取POST请求的参数。 编辑: 所以事实certificate我只有INPUT_BUFFER_LENGTH足够高(我知道,对我感到羞耻)。 因此,当我工作时,我将我的ServerSocket更改为SSLServerSocket并再次尝试从Java发送带有HttpsUrlConnection的请求,现在我又遇到了同样的问题(已经检查过缓冲区),得到这样的结果: POST / HTTP/1.1 User-Agent: Java/1.8.0_45 […]

Android:无法从String值构造java.sql.Timestamp的实例

我开发了一个REST API,我正在尝试使用Android连接到它。 以下是我的代码。 private void restCall() { Retrofit retrofit = new Retrofit.Builder() .baseUrl(URL) .addConverterFactory(GsonConverterFactory.create()) .build(); YourEndpoints request = retrofit.create(YourEndpoints.class); SetupBean setupBean = new SetupBean(); setupBean.setIdPatient(1); setupBean.setCircleType(1); setupBean.setFamiliarity(1); setupBean.setValence(2); setupBean.setArousal(3); setupBean.setDateCreated(Common.getSQLCurrentTimeStamp()); setupBean.setLastUpdated(Common.getSQLCurrentTimeStamp()); Call yourResult = request.insertSetup(setupBean); yourResult.enqueue(new Callback() { @Override public void onResponse(Call call, Response response) { try { Log.d(“MainActivity”, “RESPONSE: ” + response.errorBody().string()); } catch(Exception […]

Spring Integration – 如何使用http outbound-gateway发送POST参数

我正在尝试使用Spring Integration和http outbound-gateway组合一个非常简单的HTTP POST示例。 我需要能够发送带有一些POST参数的HTTP POST消息,就像我使用curl : $ curl -d ‘fName=Fred&sName=Bloggs’ http://localhost 如果我将一个简单的String作为参数发送到接口方法,我可以使它工作(没有POST参数),但是我需要发送一个pojo,其中pojo的每个属性都成为POST参数。 我有以下SI配置: 我的RequestGateway界面如下所示: public interface RequestGateway { String echo(Pojo request); } 我的Pojo类看起来像这样: public class Pojo { private String fName; private String sName; public Pojo(String fName, String sName) { this.fName = fName; this.sName = sName; } …. getters and setters } 而我的全class学生就是这样的: public class […]