From a3caa815c6079970c2cdffe0a81d659b95908aa9 Mon Sep 17 00:00:00 2001 From: Eason010212 <1371033826@qq.com> Date: Wed, 19 Apr 2023 17:11:12 +0800 Subject: [PATCH] logic-post-method --- blockly/iot/IOT_Blocks.js | 20 ++++++++++++++++++++ blockly/iot/IOT_Generate.js | 19 +++++++++++++++++++ blockly/msg/js/zh-hans.js | 2 ++ ejs/projects.ejs | 12 ++++++++++++ 4 files changed, 53 insertions(+) diff --git a/blockly/iot/IOT_Blocks.js b/blockly/iot/IOT_Blocks.js index 3dbdc45..c4d0194 100644 --- a/blockly/iot/IOT_Blocks.js +++ b/blockly/iot/IOT_Blocks.js @@ -18,6 +18,26 @@ Blockly.Blocks['GET'] = { } }; +Blockly.Blocks['POST'] = { + init: function() { + this.setColour(network_HUE); + this.appendDummyInput().appendField(Blockly.POSTREQ); + this.appendValueInput("url").setCheck("String"); + this.appendDummyInput().appendField(Blockly.USEDATA); + this.appendValueInput("data").setCheck("String"); + this.appendDummyInput().appendField(Blockly.WAITREQ); + this.appendDummyInput().appendField(Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS+"data"+","+"status"); + this.setInputsInline(true); + this.appendStatementInput('DO0').appendField(Blockly.Msg.CONTROLS_REPEAT_INPUT_DO); + this.setPreviousStatement(true); + this.setNextStatement(true); + this.setTooltip(""); + }, + getVars:function(){ + return ["data", "status"] + } +}; + Blockly.Blocks['GETJSON'] = { init: function() { this.setColour(network_HUE); diff --git a/blockly/iot/IOT_Generate.js b/blockly/iot/IOT_Generate.js index 7e423a2..0ccbda6 100644 --- a/blockly/iot/IOT_Generate.js +++ b/blockly/iot/IOT_Generate.js @@ -16,6 +16,25 @@ Blockly.JavaScript.GET=function(block) { return code; }; +Blockly.JavaScript.POST=function(block) { + var url = Blockly.JavaScript.valueToCode(this, 'url', Blockly.JavaScript.ORDER_ATOMIC); + var data = Blockly.JavaScript.valueToCode(this, 'data', Blockly.JavaScript.ORDER_ATOMIC); + var statement_code=Blockly.JavaScript.statementToCode(block, "DO0" ); + var code_piece=[]; + code_piece=statement_code.split("\n"); + for(var i=0;i= 0)){ + code_piece[i]=code_piece[i].replace(" "," "); + } + } + statement_code="" + for(var i=0;i + + + + URL + + + + + {"name": "Mixly"} + + +