如果方案为http(仅https)-Python模拟服务器,则不会触发Elm http请求

如果方案为http(仅https)-Python模拟服务器,则不会触发Elm http请求,python,flask,elm,Python,Flask,Elm,我使用Elm 0.19.1构建了一个SPA。应用程序应从应用程序服务器请求数据。对于我正在使用的elm/http: loadList : Cmd Msg loadList = Http.get { url = "http://www.example.com:5000/v1/list/" , expect = Http.expectJson Msg.LoadedList Item.itemListDecoder } 我有一个pythonFlaskmock服务器,我

我使用Elm 0.19.1构建了一个SPA。应用程序应从应用程序服务器请求数据。对于我正在使用的elm/http

loadList : Cmd Msg
loadList =
    Http.get
    { url = "http://www.example.com:5000/v1/list/"
    , expect = Http.expectJson Msg.LoadedList Item.itemListDecoder
    }
我有一个pythonFlaskmock服务器,我想从中获取用于开发的数据

items = [
     {
         "id": 0,
         "title": "title_0"
     },
     {
         "id": 1,
         "title": "title_1"
     }
 ]

api = Flask(__name__)

@api.route('/v1/list', methods=['GET'])
def get_items():
    return json.dumps(items)

if __name__ == '__main__':
    api.run(host='0.0.0.0')
请求列表时(
http://www.example.com:5000/v1/list/
)与邮差的回复与预期一致

如果来自请求url的方案是https,则请求到达模拟服务器,但无法处理(与:)。如果我将方案更改为http,则请求永远不会到达模拟服务器


有什么想法吗?

您的问题缺少烧瓶代码和配置。此外,您应该尝试从另一个客户机(如Postman、curl或Dominasure)调用服务器,以确定问题所在。我的直觉告诉我这与Elm无关。我添加了python代码,但它非常简单,工作正常。我测试了邮递员->没有问题。仍然有太多未解决的问题无法正确回答这个问题。浏览器调试器工具应该向您显示有关请求发生的情况的一些信息。需要检查的一件事是,我会尝试从Flask服务器和API提供Elm代码。正如@kaskelotti所说,CORS很有可能。我以前也遇到过类似的问题。谢谢你的评论。这实际上是一个复杂的内容问题,因为该网站是通过https解决的。所以很明显,所有新浏览器都不支持从http API加载内容。出于开发人员的原因,我使该网站可以通过http寻址,并且它正常工作。您的问题是缺少flask代码和配置。此外,您应该尝试从另一个客户机(如Postman、curl或Dominasure)调用服务器,以确定问题所在。我的直觉告诉我这与Elm无关。我添加了python代码,但它非常简单,工作正常。我测试了邮递员->没有问题。仍然有太多未解决的问题无法正确回答这个问题。浏览器调试器工具应该向您显示有关请求发生的情况的一些信息。需要检查的一件事是,我会尝试从Flask服务器和API提供Elm代码。正如@kaskelotti所说,CORS很有可能。我以前也遇到过类似的问题。谢谢你的评论。这实际上是一个复杂的内容问题,因为该网站是通过https解决的。所以很明显,所有新浏览器都不支持从http API加载内容。出于开发人员的原因,我使该网站可以通过http寻址,并且它正在正常工作。