0

我的结构项目

api
..app.py
....webapp
...... init .py
......user
........ init .py
........routes.py
。 .....报告
........初始化.py
........routes.py

应用程序.py

import os
from webapp import create_app

env = os.environ.get('FLASK_ENV')

app = create_app('config.ProdConfig')

if __name__ == '__main__':
    app.run()

网络应用\初始化.py

from flask import Flask
from flask_cors import CORS, cross_origin

def create_app(object_name):

  app = Flask(__name__)
  CORS(app)
  app.config.from_object(object_name)

  from webapp.user.routes import user
  from webapp.report.routes import report
  
  app.register_blueprint(user)
  app.register_blueprint(report)
  return app

webapp\user\routes.py

import os
from flask import Blueprint, jsonify, current_app
from logger import adm_logger
from .functions import userDataId, menuPrincipale

user = Blueprint('user', __name__, url_prefix='/user')

# check userdata
@user.route('userdata-id/<iddip>', methods=['GET'])
def userdata_id(iddip):
  data = userDataId(iddip)
  return jsonify(data)

文件 web.config iis

 <rewrite>
   <rules>
      <rule name="Handle History Mode 2 and custom 404/500" stopProcessing="true">
         <match url="(.*)" />
         <conditions logicalGrouping="MatchAll">
           <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
           <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
           <add input="{REQUEST_URI}" pattern="^/ticbu/(api)" negate="true" />
         </conditions>
       <action type="Rewrite" url="index.html" />
     </rule>
     <rule name="ApiProxyRule3" stopProcessing="true">
       <match url="/ticbu/api/(.*)" />
       <action type="Rewrite" url="ticbu/api/{R:1}" />
     </rule>
  </rules>
/rewrite>

当我调用 localhost/ticbu/api/user/userdata-id/11025 --- 404 Page Not Found 是什么问题?我不明白...在本地开发中工作正常

4

1 回答 1

0

我发现...只在 url_prefix='/ticbu/api/user' 上添加 /ticbu/api 对不起!

于 2020-10-26T16:20:42.663 回答