| 
									
										
										
										
											2024-11-30 23:05:22 +08:00
										 |  |  | from configs import dify_config | 
					
						
							|  |  |  | from dify_app import DifyApp | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def init_app(app: DifyApp): | 
					
						
							|  |  |  |     # register blueprint routers | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-26 00:16:35 +08:00
										 |  |  |     from flask_cors import CORS  # type: ignore | 
					
						
							| 
									
										
										
										
											2024-11-30 23:05:22 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |     from controllers.console import bp as console_app_bp | 
					
						
							|  |  |  |     from controllers.files import bp as files_bp | 
					
						
							|  |  |  |     from controllers.inner_api import bp as inner_api_bp | 
					
						
							|  |  |  |     from controllers.service_api import bp as service_api_bp | 
					
						
							|  |  |  |     from controllers.web import bp as web_bp | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     CORS( | 
					
						
							|  |  |  |         service_api_bp, | 
					
						
							|  |  |  |         allow_headers=["Content-Type", "Authorization", "X-App-Code"], | 
					
						
							|  |  |  |         methods=["GET", "PUT", "POST", "DELETE", "OPTIONS", "PATCH"], | 
					
						
							|  |  |  |     ) | 
					
						
							|  |  |  |     app.register_blueprint(service_api_bp) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     CORS( | 
					
						
							|  |  |  |         web_bp, | 
					
						
							|  |  |  |         resources={r"/*": {"origins": dify_config.WEB_API_CORS_ALLOW_ORIGINS}}, | 
					
						
							|  |  |  |         supports_credentials=True, | 
					
						
							|  |  |  |         allow_headers=["Content-Type", "Authorization", "X-App-Code"], | 
					
						
							|  |  |  |         methods=["GET", "PUT", "POST", "DELETE", "OPTIONS", "PATCH"], | 
					
						
							|  |  |  |         expose_headers=["X-Version", "X-Env"], | 
					
						
							|  |  |  |     ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     app.register_blueprint(web_bp) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     CORS( | 
					
						
							|  |  |  |         console_app_bp, | 
					
						
							|  |  |  |         resources={r"/*": {"origins": dify_config.CONSOLE_CORS_ALLOW_ORIGINS}}, | 
					
						
							|  |  |  |         supports_credentials=True, | 
					
						
							|  |  |  |         allow_headers=["Content-Type", "Authorization"], | 
					
						
							|  |  |  |         methods=["GET", "PUT", "POST", "DELETE", "OPTIONS", "PATCH"], | 
					
						
							|  |  |  |         expose_headers=["X-Version", "X-Env"], | 
					
						
							|  |  |  |     ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     app.register_blueprint(console_app_bp) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     CORS(files_bp, allow_headers=["Content-Type"], methods=["GET", "PUT", "POST", "DELETE", "OPTIONS", "PATCH"]) | 
					
						
							|  |  |  |     app.register_blueprint(files_bp) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     app.register_blueprint(inner_api_bp) |