在我的Spring-boot应用程序中无法两次击中相同的端点

时间:2019-04-26 13:35:58

标签: java spring-boot postman endpoint

我需要创建一种可以在C代码中查找并打印第一个错误的编译器。我的编译器将由一些模块组成,现在我完成了其中的两个,Lexical Analyzer和Syntactic Analyzer。词法分析器将所有文本并分成标记,将标记添加到标记列表中。 Syntactic Analyzer接收令牌列表,并检查是否按顺序写入了文本:在IF之后必须有LBAR令牌,某些表达式和RBAR令牌。缺少一个,它将抛出一个已检查的错误并停止。


  @PostMapping("/compile")
    public ResponseEntity<String> setInput(@RequestBody String input){
        if(compile(input)) {
            return ResponseEntity.ok("Success");
        }

        return ResponseEntity.ok("Compile error");
    }

    private boolean compile(String input){
        lexicalAnalyzer = new LexicalAnalyzer(input);
        lexicalAnalyzer.resetCompiler();

        line=1;
        while(lexicalAnalyzer.getNextToken()!=END){ }

        syntacticAnalyzer = new SyntacticAnalyzer(tokens);

        return syntacticAnalyzer.start();
    }

使用邮递员在C语言中以String的形式发送小文本,一切正常,直到发现第一个错误。例如:

int main(){

}

返回成功

int main({
}

返回编译错误并抛出“ Missing RPAR”

int main){
}

返回成功,应返回编译错误并抛出“ Missing LBAR”。只有重新部署,我才能收到良好的答复。

0 个答案:

没有答案