Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Flask webservice赢得';无法接收外部消息_C#_Python_Azure_Flask - Fatal编程技术网

C# Flask webservice赢得';无法接收外部消息

C# Flask webservice赢得';无法接收外部消息,c#,python,azure,flask,C#,Python,Azure,Flask,我的情况: 本地计算机上的Python Web服务: from flask import Flask, jsonify, request app = Flask(__name__) @app.route('/subscribe', methods=['POST']) def subscribe(): //Do webservice work... return "completed" if __name__ == '__main__': app.run(host

我的情况:

本地计算机上的Python Web服务:

from flask import Flask, jsonify, request

app = Flask(__name__)

@app.route('/subscribe', methods=['POST'])
def subscribe():

    //Do webservice work...

    return "completed"

if __name__ == '__main__':
    app.run(host='0.0.0.0') 
Azure云中的C#Web服务:

public static async Task SendSubscriptionAsync(string deviceName)
{
  var client = new RestClient();
  client.BaseUrl = new Uri("http://{IP adress}:5000");

  var request = new RestRequest(Method.POST);

  request.Resource = "subscribe";
  request.AddParameter("deviceName", deviceName, ParameterType.QueryString);

  IRestResponse response = await client.ExecuteTaskAsync(request);
  var content = response.Content;
 }
当我在本地运行C#webservice时,pythonwebservice接收消息

但是当我从Azure云运行C#webservice时,Python webservice不会接收消息

我读过这本书。
Python为什么不接收外部消息?

根据我的理解,您希望从Azure上的C#客户端请求本地的Flask服务

根据我的经验,简单的方法是为本地路由器配置端口转发和ADSL动态IP的动态DNS,然后C#客户端可以使用路由器的指定WAN端口访问域名

如果您的路由器不支持这些功能,我认为您可以尝试使用Azure服务总线在本地Flask服务和云C#服务之间创建通信

其原理是创建一对服务总线队列,用于在两个服务之间发送和接收,如下所示

  • 云C#服务将JSON消息作为请求发送到队列1,然后本地Flask服务通过轮询接收JSON消息,并将消息解析为用于工作的参数

    本地烧瓶服务云C#服务


尝试从LAN外部访问本地IP而不进行端口转发?如果您在家中的计算机上运行flask服务器,并在其他地方运行Web服务,则flask和python都没有问题。你应该读一读关于纳特的书:我还不知道港口转运这样的事情。我来看看。