我想创建一个国际象棋引擎。我最熟悉Swift,而超级高性能对我来说并不那么重要(否则我可能会用C ++来学习和编写)。我需要我的引擎采用棋位置in an FEN formatted字符串,看起来像这样:rnbqkbnr/pp1ppppp/8/2p5/4P3/5N2/PPPP1PPP/RNBQKB1R b KQkq - 1 2
。然后,它将处理该位置并在algebraic notation中吐出一个动作,例如Nxd4
。
然而,这些细节并不那么重要,因为我可以在Swift中进行编程。我想知道的是如何快速创建一种API。也就是说,URL编码的FEN位置将参数传递给API,如下所示:https://www.mywebsite.com/chessEngine?position=rnbqkbnr%2Fpp1ppppp%2F8%2F2p5%2F4P3%2F5N2%2FPPPP1PPP%2FRNBQKB1R%20b%20KQkq%20-%201%202
然后,Swift代码将在后端处理此位置,并且响应将类似于:
{status:"success",recommendedMove:"Nxd4",moveTime:"12.34"}
甚至有可能在后端进行Swift代码处理吗?我的API开发经验仅限于将参数用作url参数,进行SQL查询,然后将查询响应作为JSON回显。