Net Core教程

drawio www.diagrams.net 画图应用程序开发过程资料汇总

本文主要是介绍drawio www.diagrams.net 画图应用程序开发过程资料汇总,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 

 

drawio
www.diagrams.net
https://github.com/jgraph/drawio
https://github.com/jgraph/drawio
https://jgraph.github.io/drawio/src/main/webapp/index.html
https://github.com/Hlingoes/springboot-drawio
https://github.com/ydtong/drawio
https://github.com/Hlingoes/springboot-drawio
https://github.com/JolyRain/drawio_demo
https://github.com/weichou99/drawio-intergation
https://github.com/WinwayJia/drawio
https://gitee.com/gitofcjf/dynamic-flow?_from=gitee_search
https://github.com/LXFengGithub/drawio-master
https://github.com/ydtong/drawio
https://github.com/coral-cloud/coral-draw


https://www.diagrams.net/blog/embedding-walkthrough
https://www.drawzh.com/
https://desk.draw.io/support/solutions/articles/16000101649-use-the-simple-viewer


https://www.pianshen.com/article/84141387911/
https://blog.csdn.net/keylkeaf/article/details/106012044
https://blog.csdn.net/fm0517/article/details/117412592
https://blog.csdn.net/PiaoMiaoXiaodao/article/details/90761115
https://blog.csdn.net/privateobject/article/details/105143285   重要
https://zhangzw.com/posts/20200107.html
https://blog.csdn.net/MaZhaoLiang0201/article/details/107083338  保存
https://blog.csdn.net/fm0517/article/details/117560735 URL前缀为本地
https://blog.csdn.net/Iammiky/article/details/109742767  打开已保存入数据的地图
https://blog.csdn.net/Iammiky/article/details/113636410
https://www.codeleading.com/article/48782597070/
https://blog.csdn.net/weixin_41108690/article/details/88608748
https://blog.csdn.net/qq_37541097/article/details/116024091

基于draw.io的二次开发,文件增加本地以及oss存储
https://gitee.com/zero123123/draw.io
https://www.dazhuanlan.com/houfeng30920/topics/1395999
https://gitee.com/twobear/drawio-webapp
https://github.com/jgraph
vue
https://codeburst.io/from-draw-io-to-vue-js-app-c0f84ede8383
https://www.iotschool.com/topics/189

urlParams['lang'] = 'zh';//修改默认语言为中文
urlParams['offline'] = 1;//修改为离线模式
result['offline'] = '1'

            //urlParams['lang'] = 'zh';//修改默认语言为中文
            //urlParams['offline'] = 1;//修改为离线模式
            result['lang'] = '1';
            result['offline'] = 'zh';
webapp\js\diagramly\DrawioFile.js 1903行

 isLocalStorage = urlParams['local'] != '1' && typeof (localStorage) != 'undefined'
 
 DRAW_SERVER_URL
 loadServerData  加载数据
 window.DRAW_SERVER_URL = window.DRAW_SERVER_URL || '/file';
 saveToServer
 automatic=自动
autosave=自动保存
autosize=自动调整
 save=保存
 autosave
\webapp\js\diagramly\LocalFile.js 129行
加个ajax请求可将绘图信息保存到数据库 具体代码就不展示了 大致位置就在这 可以自行研究
webapp/js/diagramly/App.js
webapp/js/diagramly/StorageFile.js

将几个菜单按钮都隐藏掉:js/mxgragh/Menus.js
更改代码:






hightopo

https://github.com/qdteng/drawdb
https://github.com/othorizon/drawio-webdav
https://www.jianshu.com/p/4a1edcb07ed7



https://github.com/search?p=1&q=springboot+thymeleaf+vue&type=Repositories
https://blog.csdn.net/u014229652/article/details/82979551
https://github.com/Jackjun724/spring-boot-blog
https://github.com/jfreshik/test-message-app

C:\Users\Administrator\AppData\Local\JetBrains\IntelliJIdea2020.3\tomcat\


https://app.diagrams.net/?lang=zh

http://localhost:8080/drawio/index.html
http://localhost:8080/drawio/?dev=1
http://localhost:8080/drawio/?offline=1
http://localhost:8082


 
https://stackoverflow.com/questions/52512054/how-to-create-new-image-in-draw-io-and-save-it-database-from-within-my-website
https://drawio.freshdesk.com/support/solutions/articles/16000067785-export-a-diagram-to-various-file-formats
https://jgraph.github.io/drawio-tools/tools/convert.html

huajun-drawio
coral-draw
eventType
env_drawio_data
env_drawio_user
标准操作程序SOP
标准作业流程SOP
作业指导书
作业指导流程
NewDrawioFile.xm

 sop.url             
env_sop

 window.open(key, "_blank");
http://localhost:8082/admin/index.html



export function listUser(query) {
  return request({
    url: '/system/user/list',
    method: 'get',
    params: query,
    baseURL: process.env.BASE_API
  })
}






Access to XMLHttpRequest at 'http://localhost:8082/user/check?ids=c79d8fc734fe0e4a4b31d2509e5b5e41&token=fea1cc48-1fa3-4324-ac96-06723b992935' from origin 'http://localhost' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.


No 'Access-Control-Allow-Origin' header is present on the requested resource.

CorsConfig 

 if (StringUtils.isNotEmpty(token))
        {
            String userKey = getTokenKey(token);
            LoginUser user = redisService.getCacheObject(userKey);
            return user;
        }

  redis:
    database: 6
    host: 192.168.8.248
    port: 6379
    password: 

http://localhost:8082


user=darjeely&pass=cardinals5521

http://localhost:8082/index.html?ownerId=1629168317743_1546895912&uuid=affe9bfc-c0e9-4885-966c-bfb7130433cd#L%E6%B2%B3%E5%8D%97%E7%9C%81%E5%BA%94%E6%80%A5%E5%8E%85

 this.loading = true;
 
  this.loading = false;
  
http://localhost:8082/index.html?ownerId=publicUser&uuid=52a9dc40-96ba-4d16-86dd-8563326a224b#LNewDrawioFile.xml  



 http://localhost:8082/index.html?ownerId=publicUser&uuid=c79d8fc734fe0e4a4b31d2509e5b5e41&title=第三方付付付不#LNewDrawioFile.xml
 
 http://localhost:8082/index.html?ownerId=publicUser&uuid=c79d8fc734fe0e4a4b31d2509e5b5e41#LNewDrawioFile.xml
 http://localhost:8082/index.html?ownerId=publicUser&uuid=52a9dc40-96ba-4d16-86dd-8563326a224b#LNewDrawioFile.xml
 
  http://localhost:8086/index.html?ownerId=publicUser&uuid=52a9dc40-96ba-4d16-86dd-8563326a224b#LNewDrawioFile.xml
 
 
http://localhost:8082/index.html?ownerId=publicUser&uuid=c79d8fc734fe0e4a4b31d2509e5b5e41&title=%E7%AC%AC%E4%B8%89%E6%96%B9%E4%BB%98%E4%BB%98%E4%BB%98%E4%B8%8D#LNewDrawioFile.xml

http://localhost:8082/index.html?ownerId=publicUser&uuid=426d8fc734fe0e4a4b31d2509e5b5e42&title=%E6%B5%8B%E8%AF%95%E4%B8%80#LNewDrawioFile.xml

http://localhost:8082/index.html?ownerId=publicUser&uuid=436d8fc734fe0e4a4b31d2509e5b5e43&title=%E6%B5%8B%E8%AF%95%E4%B8%80#LNewDrawioFile.xml



2021-08-18 19:24:07.318  WARN 13560 --- [nio-8082-exec-4] o.h.engine.jdbc.spi.SqlExceptionHelper   : SQL Error: 1062, SQLState: 23000
2021-08-18 19:24:07.318 ERROR 13560 --- [nio-8082-exec-4] o.h.engine.jdbc.spi.SqlExceptionHelper   : Duplicate entry 'publicUser' for key 'UK_ro1shf9dkhardfds9psiwqtld'
2021-08-18 19:24:07.319 ERROR 13560 --- [nio-8082-exec-4] c.m.server.biz.base.DrawBaseService      : {"body":"PG14ZmlsZSBtb2RpZmllZD0iMjAyMS0wOC0xOFQxMDoyMjozNi4xNTlaIiBob3N0PSJsb2NhbGhvc3QiIGFnZW50PSJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTIuMC40NTE1LjE1OSBTYWZhcmkvNTM3LjM2IiBldGFnPSJCQVY5UE50UHBaZ2xWRGY5RjZqSiIgdmVyc2lvbj0iMTAuOS41IiB0eXBlPSJicm93c2VyIj48ZGlhZ3JhbSBpZD0iRk8ydjNhMTV0THpvVUR1YWN0elYiIG5hbWU9IlBhZ2UtMSI+eFpoYlU2TXdHSVovRFpmdWNHZ3B2YlJIN1dxclUxMVhiNXdVVW9nR3dvYlFncjkrQTRSeVZOdWR0dHR4cG54dkRpVFBkMGlxcEEzZGFFcUI3OXdTQzJKSmxhMUkwa2FTcWlvZFZaV1NQOW1LTTZYWDF6UEJwc2dTblFwaGlUNmdFR1doaHNpQ1FhVWpJd1F6NUZkRmszZ2VORmxGQTVTU2JiWGJtdURxVzMxZ3c0YXdOQUZ1cWsvSVlrNm1HbXF2MEs4Z3NwMzh6WXJlejFwY2tIY1dPd2tjWUpGdFNkTEdramFraExEc3lZMkdFQ2Z3Y2k3WnVNa25yYnVGVWVpeGZRYU0vOXpqNk9MaDZtRXpESzRlbDdvN2Z3MHZ4Q3diZ0VPeDRUams5aHZDU0ZKMTRQcVNOdkJXUWZJbGRzSGlIQTBsb1dmQlpIYUZOMjhkeE9EU0IyYlN1dVhCd0RXSHVWZzBOMWVidnhwU0JxT1NKRlkvaGNTRmpNYThpMmpWOHBnUW9kVHBDSHRiT0ViSmFUc2xwK2hDQXlJVzdOM1VCUzcrSUlnZFFFOXQwR3RBNGw3M2swY3p4b2pUb3QrVFdtVlliMVk3QVpqdmRncDdFVEkrQ3p3ZVVsMnVJaldhUlBVV29NYXBnR3I3QTJVY0hQd2d5WFFESDFMRUY1RFFMZlM3UWp4RGNOWkpxdjg5T0RzSEJDZWcxbmxTdUZ1bHBPaE5Ta1lMSkVVK0ZhWHUvcFI4U2t3WUJIdGs4T2tTdGxNRDJOSE9HR2IzM20xQXR3dnJUcVhyeVFKUFI3TW4ybktDZkJGbUdKT1FmUSt3bk05aVVEbWJqOERScU1YaHZ0bDZqTW8zbndRUDdGb3hYblFaUG04VXN1MWhKOGRZb2dZdGZoRVJKcUhNSVRieEFCNFg2cUE0Z0dWdUZYMXVDUEVGeVRmSVdDeHVWU0JrcE1vWlJvajlUb2IvVUx2Q2ZFN04zQnBGWXZMVWlFdEd5UitwOXFsUEFoSlNFMzRSUUNKZWt1MSs2VGtLTVdCb1U3Mlh0ZmxCREwwamlDOWw1L0hkUFV5NFhLdVhGQWFvRFprWVZmUG1iaG4vbmljSDNCVWljcDR6UytsWGtlZ3R4ZVJVeC8rTURVMkZ6Wkh4Ni9uK25aZkluOXBnMWxKTGxQVFRJTVUzeUtvNEFrYkpPeHdTbkxBYmVTUXB1b00xd3JnbUFZeHNMeWtySEZ0YVRCSmNpQmVaUzlIZ0lzdEtzNnVOZnpYamp1R0NYczBGVFE5MFdqeWdIc0VEL1k4bDlPVEllQWxlOGVweEVzM2pwWGxJTmVmNzVxVVpZbUpUNE5hS2RxWHR2QmV4YnUwaXBwL3pJdWJFTHo2YmVrL0tnbGpYZHMrNVhNKzhmWmp5V2ZnUDJzK2k3cmlBNmxlSTd1bU9QbTRXdjIrelFscjhsMEFiL3dVPTwvZGlhZ3JhbT48L214ZmlsZT4=","createTime":1629285847314,"delFlag":0,"id":0,"name":"NewDrawioFile.xml","ownerId":"publicUser","svgData":"ZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhodGJHNXpPbmhzYVc1clBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1TDNoc2FXNXJJaUIyWlhKemFXOXVQU0l4TGpFaUlIZHBaSFJvUFNJMk5ERndlQ0lnYUdWcFoyaDBQU0kyTmpGd2VDSWdkbWxsZDBKdmVEMGlMVEF1TlNBdE1DNDFJRFkwTVNBMk5qRWlQanhrWldaekx6NDhaejQ4Y21WamRDQjRQU0l5TXpBaUlIazlJak01TUNJZ2QybGtkR2c5SWpFeU1DSWdhR1ZwWjJoMFBTSTJNQ0lnY25nOUlqa2lJSEo1UFNJNUlpQm1hV3hzUFNJalptWm1abVptSWlCemRISnZhMlU5SWlNd01EQXdNREFpSUhCdmFXNTBaWEl0WlhabGJuUnpQU0p1YjI1bElpOCtQR2NnZEhKaGJuTm1iM0p0UFNKMGNtRnVjMnhoZEdVb01qYzBMalVzTkRFekxqVXBJajQ4YzNkcGRHTm9QanhtYjNKbGFXZHVUMkpxWldOMElITjBlV3hsUFNKdmRtVnlabXh2ZHpwMmFYTnBZbXhsT3lJZ2NHOXBiblJsY2kxbGRtVnVkSE05SW1Gc2JDSWdkMmxrZEdnOUlqTXdJaUJvWldsbmFIUTlJakV5SWlCeVpYRjFhWEpsWkVabFlYUjFjbVZ6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk5VVVpOVRWa2N4TVM5bVpXRjBkWEpsSTBWNGRHVnVjMmxpYVd4cGRIa2lQanhrYVhZZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR2gwYld3aUlITjBlV3hsUFNKa2FYTndiR0Y1T2lCcGJteHBibVV0WW14dlkyczdJR1p2Ym5RdGMybDZaVG9nTVRKd2VEc2dabTl1ZEMxbVlXMXBiSGs2SUVobGJIWmxkR2xqWVRzZ1kyOXNiM0k2SUhKbllpZ3dMQ0F3TENBd0tUc2diR2x1WlMxb1pXbG5hSFE2SURFdU1qc2dkbVZ5ZEdsallXd3RZV3hwWjI0NklIUnZjRHNnZDJsa2RHZzZJRE15Y0hnN0lIZG9hWFJsTFhOd1lXTmxPaUJ1YjNkeVlYQTdJRzkyWlhKbWJHOTNMWGR5WVhBNklHNXZjbTFoYkRzZ2RHVjRkQzFoYkdsbmJqb2dZMlZ1ZEdWeU95SStQR1JwZGlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRhSFJ0YkNJZ2MzUjViR1U5SW1ScGMzQnNZWGs2YVc1c2FXNWxMV0pzYjJOck8zUmxlSFF0WVd4cFoyNDZhVzVvWlhKcGREdDBaWGgwTFdSbFkyOXlZWFJwYjI0NmFXNW9aWEpwZER0M2FHbDBaUzF6Y0dGalpUcHViM0p0WVd3N0lqNTVkU0JxYVd4cHdxQThMMlJwZGo0OEwyUnBkajQ4TDJadmNtVnBaMjVQWW1wbFkzUStQSFJsZUhRZ2VEMGlNVFVpSUhrOUlqRXlJaUJtYVd4c1BTSWpNREF3TURBd0lpQjBaWGgwTFdGdVkyaHZjajBpYldsa1pHeGxJaUJtYjI1MExYTnBlbVU5SWpFeWNIZ2lJR1p2Ym5RdFptRnRhV3g1UFNJblNHVnNkbVYwYVdOaEp5SStXMDV2ZENCemRYQndiM0owWldRZ1lua2dkbWxsZDJWeVhUd3ZkR1Y0ZEQ0OEwzTjNhWFJqYUQ0OEwyYytQSEJoZEdnZ1pEMGlUU0ExTWpBZ05EWWdReUExTWpBZ01qUXVOamNnTlRnd0lESTBMalkzSURVNE1DQTBOaUJNSURVNE1DQTVOQ0JESURVNE1DQXhNVFV1TXpNZ05USXdJREV4TlM0ek15QTFNakFnT1RRZ1dpSWdabWxzYkQwaUkyWm1abVptWmlJZ2MzUnliMnRsUFNJak1EQXdNREF3SWlCemRISnZhMlV0YldsMFpYSnNhVzFwZEQwaU1UQWlJSEJ2YVc1MFpYSXRaWFpsYm5SelBTSnViMjVsSWk4K1BIQmhkR2dnWkQwaVRTQTFNakFnTkRZZ1F5QTFNakFnTmpJZ05UZ3dJRFl5SURVNE1DQTBOaUlnWm1sc2JEMGlibTl1WlNJZ2MzUnliMnRsUFNJak1EQXdNREF3SWlCemRISnZhMlV0YldsMFpYSnNhVzFwZEQwaU1UQWlJSEJ2YVc1MFpYSXRaWFpsYm5SelBTSnViMjVsSWk4K1BIQmhkR2dnWkQwaVRTQTFNakFnTWpVd0lFd2dOVFEwSURFNU1DQk1JRFl4TmlBeE9UQWdUQ0EyTkRBZ01qVXdJRm9pSUdacGJHdzlJaU5tWm1abVptWWlJSE4wY205clpUMGlJekF3TURBd01DSWdjM1J5YjJ0bExXMXBkR1Z5YkdsdGFYUTlJakV3SWlCd2IybHVkR1Z5TFdWMlpXNTBjejBpYm05dVpTSXZQanh3WVhSb0lHUTlJazBnTXpBd0lERXhNQ0JNSURNMU1DQXhNVEFnVENBek5UQWdNakV3SUV3Z01qY3dJREl4TUNCTUlESTNNQ0F4TkRBZ1dpSWdabWxzYkQwaUkyWm1abVptWmlJZ2MzUnliMnRsUFNJak1EQXdNREF3SWlCemRISnZhMlV0YldsMFpYSnNhVzFwZEQwaU1UQWlJSEJ2YVc1MFpYSXRaWFpsYm5SelBTSnViMjVsSWk4K1BISmxZM1FnZUQwaU16Y3dJaUI1UFNJek9EQWlJSGRwWkhSb1BTSXhNakFpSUdobGFXZG9kRDBpTmpBaUlHWnBiR3c5SWlObVptWm1abVlpSUhOMGNtOXJaVDBpSXpBd01EQXdNQ0lnY0c5cGJuUmxjaTFsZG1WdWRITTlJbTV2Ym1VaUx6NDhjR0YwYUNCa1BTSk5JRE00TWlBek9EQWdUQ0F6T0RJZ05EUXdJRTBnTkRjNElETTRNQ0JNSURRM09DQTBOREFpSUdacGJHdzlJbTV2Ym1VaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFcxcGRHVnliR2x0YVhROUlqRXdJaUJ3YjJsdWRHVnlMV1YyWlc1MGN6MGlibTl1WlNJdlBqeHdZWFJvSUdROUlrMGdNQ0E1TUNCTUlERXlNQ0E1TUNCTUlERXlNQ0F4TkRBZ1RDQTRNQ0F4TkRBZ1RDQTJNQ0F4TnpBZ1RDQTJNQ0F4TkRBZ1RDQXdJREUwTUNCYUlpQm1hV3hzUFNJalptWm1abVptSWlCemRISnZhMlU5SWlNd01EQXdNREFpSUhOMGNtOXJaUzF0YVhSbGNteHBiV2wwUFNJeE1DSWdjRzlwYm5SbGNpMWxkbVZ1ZEhNOUltNXZibVVpTHo0OGNHRjBhQ0JrUFNKTklERXlOU0EyTWpBZ1RDQXhNalVnTkRFMUlFd2dNVFF3SURReE5TQk1JREUwTUNBeU5UWXVNemNpSUdacGJHdzlJbTV2Ym1VaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFcxcGRHVnliR2x0YVhROUlqRXdJaUJ3YjJsdWRHVnlMV1YyWlc1MGN6MGlibTl1WlNJdlBqeHdZWFJvSUdROUlrMGdNVFF3SURJMU1TNHhNaUJNSURFME15NDFJREkxT0M0eE1pQk1JREUwTUNBeU5UWXVNemNnVENBeE16WXVOU0F5TlRndU1USWdXaUlnWm1sc2JEMGlJekF3TURBd01DSWdjM1J5YjJ0bFBTSWpNREF3TURBd0lpQnpkSEp2YTJVdGJXbDBaWEpzYVcxcGREMGlNVEFpSUhCdmFXNTBaWEl0WlhabGJuUnpQU0p1YjI1bElpOCtQSEJoZEdnZ1pEMGlUU0F4TVRBZ05UZ3dJRkVnTVRjd0lEVTRNQ0F4TnpBZ05qSXdJRkVnTVRjd0lEWTJNQ0F4TVRBZ05qWXdJRkVnTVRRd0lEWXlNQ0F4TVRBZ05UZ3dJRm9pSUdacGJHdzlJaU5tWm1abVptWWlJSE4wY205clpUMGlJekF3TURBd01DSWdjM1J5YjJ0bExXMXBkR1Z5YkdsdGFYUTlJakV3SWlCd2IybHVkR1Z5TFdWMlpXNTBjejBpYm05dVpTSXZQanhuSUhSeVlXNXpabTl5YlQwaWRISmhibk5zWVhSbEtEa3hMalVzTVRNdU5Ta2lQanh6ZDJsMFkyZytQR1p2Y21WcFoyNVBZbXBsWTNRZ2MzUjViR1U5SW05MlpYSm1iRzkzT25acGMybGliR1U3SWlCd2IybHVkR1Z5TFdWMlpXNTBjejBpWVd4c0lpQjNhV1IwYUQwaU16WWlJR2hsYVdkb2REMGlNVElpSUhKbGNYVnBjbVZrUm1WaGRIVnlaWE05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTDFSU0wxTldSekV4TDJabFlYUjFjbVVqUlhoMFpXNXphV0pwYkdsMGVTSStQR1JwZGlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRhSFJ0YkNJZ2MzUjViR1U5SW1ScGMzQnNZWGs2SUdsdWJHbHVaUzFpYkc5amF6c2dabTl1ZEMxemFYcGxPaUF4TW5CNE95Qm1iMjUwTFdaaGJXbHNlVG9nU0dWc2RtVjBhV05oT3lCamIyeHZjam9nY21kaUtEQXNJREFzSURBcE95QnNhVzVsTFdobGFXZG9kRG9nTVM0eU95QjJaWEowYVdOaGJDMWhiR2xuYmpvZ2RHOXdPeUIzYVdSMGFEb2dNelp3ZURzZ2QyaHBkR1V0YzNCaFkyVTZJRzV2ZDNKaGNEc2diM1psY21ac2IzY3RkM0poY0RvZ2JtOXliV0ZzT3lCMFpYaDBMV0ZzYVdkdU9pQmpaVzUwWlhJN0lqNDhaR2wySUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUwzaG9kRzFzSWlCemRIbHNaVDBpWkdsemNHeGhlVHBwYm14cGJtVXRZbXh2WTJzN2RHVjRkQzFoYkdsbmJqcHBibWhsY21sME8zUmxlSFF0WkdWamIzSmhkR2x2YmpwcGJtaGxjbWwwTzNkb2FYUmxMWE53WVdObE9tNXZjbTFoYkRzaVBqRXhNVEV4TVR3dlpHbDJQand2WkdsMlBqd3ZabTl5WldsbmJrOWlhbVZqZEQ0OGRHVjRkQ0I0UFNJeE9DSWdlVDBpTVRJaUlHWnBiR3c5SWlNd01EQXdNREFpSUhSbGVIUXRZVzVqYUc5eVBTSnRhV1JrYkdVaUlHWnZiblF0YzJsNlpUMGlNVEp3ZUNJZ1ptOXVkQzFtWVcxcGJIazlJa2hsYkhabGRHbGpZU0krTVRFeE1URXhQQzkwWlhoMFBqd3ZjM2RwZEdOb1Bqd3ZaejQ4Y0dGMGFDQmtQU0pOSURReU1DQTJOVEFnVENBME5EUWdOVGt3SUV3Z05UUXdJRFU1TUNCTUlEVXhOaUEyTlRBZ1dpSWdabWxzYkQwaUkyWm1abVptWmlJZ2MzUnliMnRsUFNJak1EQXdNREF3SWlCemRISnZhMlV0YldsMFpYSnNhVzFwZEQwaU1UQWlJSEJ2YVc1MFpYSXRaWFpsYm5SelBTSnViMjVsSWk4K1BHVnNiR2x3YzJVZ1kzZzlJalF6TUNJZ1kzazlJalF3SWlCeWVEMGlOakFpSUhKNVBTSTBNQ0lnWm1sc2JEMGlJMlptWm1abVppSWdjM1J5YjJ0bFBTSWpNREF3TURBd0lpQndiMmx1ZEdWeUxXVjJaVzUwY3owaWJtOXVaU0l2UGp3dlp6NDhMM04yWno0PQ==","updateTime":1629285847314,"uuid":"42a9dc40-96ba-4d16-86dd-8563326a2242"}:could not execute statement; SQL [n/a]; constraint [UK_ro1shf9dkhardfds9psiwqtld]; nested exception is org.hibernate.exception.ConstraintViolationException: could not execute statement
2021-08-18 19:24:07.320  INFO 13560 --- [nio-8082-exec-4] c.m.server.biz.control.FileControl       : save File:{"body":"PG14ZmlsZSBtb2RpZmllZD0iMjAyMS0wOC0xOFQxMDoyMjozNi4xNTlaIiBob3N0PSJsb2NhbGhvc3QiIGFnZW50PSJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTIuMC40NTE1LjE1OSBTYWZhcmkvNTM3LjM2IiBldGFnPSJCQVY5UE50UHBaZ2xWRGY5RjZqSiIgdmVyc2lvbj0iMTAuOS41IiB0eXBlPSJicm93c2VyIj48ZGlhZ3JhbSBpZD0iRk8ydjNhMTV0THpvVUR1YWN0elYiIG5hbWU9IlBhZ2UtMSI+eFpoYlU2TXdHSVovRFpmdWNHZ3B2YlJIN1dxclUxMVhiNXdVVW9nR3dvYlFncjkrQTRSeVZOdWR0dHR4cG54dkRpVFBkMGlxcEEzZGFFcUI3OXdTQzJKSmxhMUkwa2FTcWlvZFZaV1NQOW1LTTZYWDF6UEJwc2dTblFwaGlUNmdFR1doaHNpQ1FhVWpJd1F6NUZkRmszZ2VORmxGQTVTU2JiWGJtdURxVzMxZ3c0YXdOQUZ1cWsvSVlrNm1HbXF2MEs4Z3NwMzh6WXJlejFwY2tIY1dPd2tjWUpGdFNkTEdramFraExEc3lZMkdFQ2Z3Y2k3WnVNa25yYnVGVWVpeGZRYU0vOXpqNk9MaDZtRXpESzRlbDdvN2Z3MHZ4Q3diZ0VPeDRUams5aHZDU0ZKMTRQcVNOdkJXUWZJbGRzSGlIQTBsb1dmQlpIYUZOMjhkeE9EU0IyYlN1dVhCd0RXSHVWZzBOMWVidnhwU0JxT1NKRlkvaGNTRmpNYThpMmpWOHBnUW9kVHBDSHRiT0ViSmFUc2xwK2hDQXlJVzdOM1VCUzcrSUlnZFFFOXQwR3RBNGw3M2swY3p4b2pUb3QrVFdtVlliMVk3QVpqdmRncDdFVEkrQ3p3ZVVsMnVJaldhUlBVV29NYXBnR3I3QTJVY0hQd2d5WFFESDFMRUY1RFFMZlM3UWp4RGNOWkpxdjg5T0RzSEJDZWcxbmxTdUZ1bHBPaE5Ta1lMSkVVK0ZhWHUvcFI4U2t3WUJIdGs4T2tTdGxNRDJOSE9HR2IzM20xQXR3dnJUcVhyeVFKUFI3TW4ybktDZkJGbUdKT1FmUSt3bk05aVVEbWJqOERScU1YaHZ0bDZqTW8zbndRUDdGb3hYblFaUG04VXN1MWhKOGRZb2dZdGZoRVJKcUhNSVRieEFCNFg2cUE0Z0dWdUZYMXVDUEVGeVRmSVdDeHVWU0JrcE1vWlJvajlUb2IvVUx2Q2ZFN04zQnBGWXZMVWlFdEd5UitwOXFsUEFoSlNFMzRSUUNKZWt1MSs2VGtLTVdCb1U3Mlh0ZmxCREwwamlDOWw1L0hkUFV5NFhLdVhGQWFvRFprWVZmUG1iaG4vbmljSDNCVWljcDR6UytsWGtlZ3R4ZVJVeC8rTURVMkZ6Wkh4Ni9uK25aZkluOXBnMWxKTGxQVFRJTVUzeUtvNEFrYkpPeHdTbkxBYmVTUXB1b00xd3JnbUFZeHNMeWtySEZ0YVRCSmNpQmVaUzlIZ0lzdEtzNnVOZnpYamp1R0NYczBGVFE5MFdqeWdIc0VEL1k4bDlPVEllQWxlOGVweEVzM2pwWGxJTmVmNzVxVVpZbUpUNE5hS2RxWHR2QmV4YnUwaXBwL3pJdWJFTHo2YmVrL0tnbGpYZHMrNVhNKzhmWmp5V2ZnUDJzK2k3cmlBNmxlSTd1bU9QbTRXdjIrelFscjhsMEFiL3dVPTwvZGlhZ3JhbT48L214ZmlsZT4=","createTime":1629285847314,"delFlag":0,"id":0,"name":"NewDrawioFile.xml","ownerId":"publicUser","svgData":"ZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhodGJHNXpPbmhzYVc1clBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1TDNoc2FXNXJJaUIyWlhKemFXOXVQU0l4TGpFaUlIZHBaSFJvUFNJMk5ERndlQ0lnYUdWcFoyaDBQU0kyTmpGd2VDSWdkbWxsZDBKdmVEMGlMVEF1TlNBdE1DNDFJRFkwTVNBMk5qRWlQanhrWldaekx6NDhaejQ4Y21WamRDQjRQU0l5TXpBaUlIazlJak01TUNJZ2QybGtkR2c5SWpFeU1DSWdhR1ZwWjJoMFBTSTJNQ0lnY25nOUlqa2lJSEo1UFNJNUlpQm1hV3hzUFNJalptWm1abVptSWlCemRISnZhMlU5SWlNd01EQXdNREFpSUhCdmFXNTBaWEl0WlhabGJuUnpQU0p1YjI1bElpOCtQR2NnZEhKaGJuTm1iM0p0UFNKMGNtRnVjMnhoZEdVb01qYzBMalVzTkRFekxqVXBJajQ4YzNkcGRHTm9QanhtYjNKbGFXZHVUMkpxWldOMElITjBlV3hsUFNKdmRtVnlabXh2ZHpwMmFYTnBZbXhsT3lJZ2NHOXBiblJsY2kxbGRtVnVkSE05SW1Gc2JDSWdkMmxrZEdnOUlqTXdJaUJvWldsbmFIUTlJakV5SWlCeVpYRjFhWEpsWkVabFlYUjFjbVZ6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk5VVVpOVRWa2N4TVM5bVpXRjBkWEpsSTBWNGRHVnVjMmxpYVd4cGRIa2lQanhrYVhZZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR2gwYld3aUlITjBlV3hsUFNKa2FYTndiR0Y1T2lCcGJteHBibVV0WW14dlkyczdJR1p2Ym5RdGMybDZaVG9nTVRKd2VEc2dabTl1ZEMxbVlXMXBiSGs2SUVobGJIWmxkR2xqWVRzZ1kyOXNiM0k2SUhKbllpZ3dMQ0F3TENBd0tUc2diR2x1WlMxb1pXbG5hSFE2SURFdU1qc2dkbVZ5ZEdsallXd3RZV3hwWjI0NklIUnZjRHNnZDJsa2RHZzZJRE15Y0hnN0lIZG9hWFJsTFhOd1lXTmxPaUJ1YjNkeVlYQTdJRzkyWlhKbWJHOTNMWGR5WVhBNklHNXZjbTFoYkRzZ2RHVjRkQzFoYkdsbmJqb2dZMlZ1ZEdWeU95SStQR1JwZGlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRhSFJ0YkNJZ2MzUjViR1U5SW1ScGMzQnNZWGs2YVc1c2FXNWxMV0pzYjJOck8zUmxlSFF0WVd4cFoyNDZhVzVvWlhKcGREdDBaWGgwTFdSbFkyOXlZWFJwYjI0NmFXNW9aWEpwZER0M2FHbDBaUzF6Y0dGalpUcHViM0p0WVd3N0lqNTVkU0JxYVd4cHdxQThMMlJwZGo0OEwyUnBkajQ4TDJadmNtVnBaMjVQWW1wbFkzUStQSFJsZUhRZ2VEMGlNVFVpSUhrOUlqRXlJaUJtYVd4c1BTSWpNREF3TURBd0lpQjBaWGgwTFdGdVkyaHZjajBpYldsa1pHeGxJaUJtYjI1MExYTnBlbVU5SWpFeWNIZ2lJR1p2Ym5RdFptRnRhV3g1UFNJblNHVnNkbVYwYVdOaEp5SStXMDV2ZENCemRYQndiM0owWldRZ1lua2dkbWxsZDJWeVhUd3ZkR1Y0ZEQ0OEwzTjNhWFJqYUQ0OEwyYytQSEJoZEdnZ1pEMGlUU0ExTWpBZ05EWWdReUExTWpBZ01qUXVOamNnTlRnd0lESTBMalkzSURVNE1DQTBOaUJNSURVNE1DQTVOQ0JESURVNE1DQXhNVFV1TXpNZ05USXdJREV4TlM0ek15QTFNakFnT1RRZ1dpSWdabWxzYkQwaUkyWm1abVptWmlJZ2MzUnliMnRsUFNJak1EQXdNREF3SWlCemRISnZhMlV0YldsMFpYSnNhVzFwZEQwaU1UQWlJSEJ2YVc1MFpYSXRaWFpsYm5SelBTSnViMjVsSWk4K1BIQmhkR2dnWkQwaVRTQTFNakFnTkRZZ1F5QTFNakFnTmpJZ05UZ3dJRFl5SURVNE1DQTBOaUlnWm1sc2JEMGlibTl1WlNJZ2MzUnliMnRsUFNJak1EQXdNREF3SWlCemRISnZhMlV0YldsMFpYSnNhVzFwZEQwaU1UQWlJSEJ2YVc1MFpYSXRaWFpsYm5SelBTSnViMjVsSWk4K1BIQmhkR2dnWkQwaVRTQTFNakFnTWpVd0lFd2dOVFEwSURFNU1DQk1JRFl4TmlBeE9UQWdUQ0EyTkRBZ01qVXdJRm9pSUdacGJHdzlJaU5tWm1abVptWWlJSE4wY205clpUMGlJekF3TURBd01DSWdjM1J5YjJ0bExXMXBkR1Z5YkdsdGFYUTlJakV3SWlCd2IybHVkR1Z5TFdWMlpXNTBjejBpYm05dVpTSXZQanh3WVhSb0lHUTlJazBnTXpBd0lERXhNQ0JNSURNMU1DQXhNVEFnVENBek5UQWdNakV3SUV3Z01qY3dJREl4TUNCTUlESTNNQ0F4TkRBZ1dpSWdabWxzYkQwaUkyWm1abVptWmlJZ2MzUnliMnRsUFNJak1EQXdNREF3SWlCemRISnZhMlV0YldsMFpYSnNhVzFwZEQwaU1UQWlJSEJ2YVc1MFpYSXRaWFpsYm5SelBTSnViMjVsSWk4K1BISmxZM1FnZUQwaU16Y3dJaUI1UFNJek9EQWlJSGRwWkhSb1BTSXhNakFpSUdobGFXZG9kRDBpTmpBaUlHWnBiR3c5SWlObVptWm1abVlpSUhOMGNtOXJaVDBpSXpBd01EQXdNQ0lnY0c5cGJuUmxjaTFsZG1WdWRITTlJbTV2Ym1VaUx6NDhjR0YwYUNCa1BTSk5JRE00TWlBek9EQWdUQ0F6T0RJZ05EUXdJRTBnTkRjNElETTRNQ0JNSURRM09DQTBOREFpSUdacGJHdzlJbTV2Ym1VaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFcxcGRHVnliR2x0YVhROUlqRXdJaUJ3YjJsdWRHVnlMV1YyWlc1MGN6MGlibTl1WlNJdlBqeHdZWFJvSUdROUlrMGdNQ0E1TUNCTUlERXlNQ0E1TUNCTUlERXlNQ0F4TkRBZ1RDQTRNQ0F4TkRBZ1RDQTJNQ0F4TnpBZ1RDQTJNQ0F4TkRBZ1RDQXdJREUwTUNCYUlpQm1hV3hzUFNJalptWm1abVptSWlCemRISnZhMlU5SWlNd01EQXdNREFpSUhOMGNtOXJaUzF0YVhSbGNteHBiV2wwUFNJeE1DSWdjRzlwYm5SbGNpMWxkbVZ1ZEhNOUltNXZibVVpTHo0OGNHRjBhQ0JrUFNKTklERXlOU0EyTWpBZ1RDQXhNalVnTkRFMUlFd2dNVFF3SURReE5TQk1JREUwTUNBeU5UWXVNemNpSUdacGJHdzlJbTV2Ym1VaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFcxcGRHVnliR2x0YVhROUlqRXdJaUJ3YjJsdWRHVnlMV1YyWlc1MGN6MGlibTl1WlNJdlBqeHdZWFJvSUdROUlrMGdNVFF3SURJMU1TNHhNaUJNSURFME15NDFJREkxT0M0eE1pQk1JREUwTUNBeU5UWXVNemNnVENBeE16WXVOU0F5TlRndU1USWdXaUlnWm1sc2JEMGlJekF3TURBd01DSWdjM1J5YjJ0bFBTSWpNREF3TURBd0lpQnpkSEp2YTJVdGJXbDBaWEpzYVcxcGREMGlNVEFpSUhCdmFXNTBaWEl0WlhabGJuUnpQU0p1YjI1bElpOCtQSEJoZEdnZ1pEMGlUU0F4TVRBZ05UZ3dJRkVnTVRjd0lEVTRNQ0F4TnpBZ05qSXdJRkVnTVRjd0lEWTJNQ0F4TVRBZ05qWXdJRkVnTVRRd0lEWXlNQ0F4TVRBZ05UZ3dJRm9pSUdacGJHdzlJaU5tWm1abVptWWlJSE4wY205clpUMGlJekF3TURBd01DSWdjM1J5YjJ0bExXMXBkR1Z5YkdsdGFYUTlJakV3SWlCd2IybHVkR1Z5TFdWMlpXNTBjejBpYm05dVpTSXZQanhuSUhSeVlXNXpabTl5YlQwaWRISmhibk5zWVhSbEtEa3hMalVzTVRNdU5Ta2lQanh6ZDJsMFkyZytQR1p2Y21WcFoyNVBZbXBsWTNRZ2MzUjViR1U5SW05MlpYSm1iRzkzT25acGMybGliR1U3SWlCd2IybHVkR1Z5TFdWMlpXNTBjejBpWVd4c0lpQjNhV1IwYUQwaU16WWlJR2hsYVdkb2REMGlNVElpSUhKbGNYVnBjbVZrUm1WaGRIVnlaWE05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTDFSU0wxTldSekV4TDJabFlYUjFjbVVqUlhoMFpXNXphV0pwYkdsMGVTSStQR1JwZGlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRhSFJ0YkNJZ2MzUjViR1U5SW1ScGMzQnNZWGs2SUdsdWJHbHVaUzFpYkc5amF6c2dabTl1ZEMxemFYcGxPaUF4TW5CNE95Qm1iMjUwTFdaaGJXbHNlVG9nU0dWc2RtVjBhV05oT3lCamIyeHZjam9nY21kaUtEQXNJREFzSURBcE95QnNhVzVsTFdobGFXZG9kRG9nTVM0eU95QjJaWEowYVdOaGJDMWhiR2xuYmpvZ2RHOXdPeUIzYVdSMGFEb2dNelp3ZURzZ2QyaHBkR1V0YzNCaFkyVTZJRzV2ZDNKaGNEc2diM1psY21ac2IzY3RkM0poY0RvZ2JtOXliV0ZzT3lCMFpYaDBMV0ZzYVdkdU9pQmpaVzUwWlhJN0lqNDhaR2wySUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUwzaG9kRzFzSWlCemRIbHNaVDBpWkdsemNHeGhlVHBwYm14cGJtVXRZbXh2WTJzN2RHVjRkQzFoYkdsbmJqcHBibWhsY21sME8zUmxlSFF0WkdWamIzSmhkR2x2YmpwcGJtaGxjbWwwTzNkb2FYUmxMWE53WVdObE9tNXZjbTFoYkRzaVBqRXhNVEV4TVR3dlpHbDJQand2WkdsMlBqd3ZabTl5WldsbmJrOWlhbVZqZEQ0OGRHVjRkQ0I0UFNJeE9DSWdlVDBpTVRJaUlHWnBiR3c5SWlNd01EQXdNREFpSUhSbGVIUXRZVzVqYUc5eVBTSnRhV1JrYkdVaUlHWnZiblF0YzJsNlpUMGlNVEp3ZUNJZ1ptOXVkQzFtWVcxcGJIazlJa2hsYkhabGRHbGpZU0krTVRFeE1URXhQQzkwWlhoMFBqd3ZjM2RwZEdOb1Bqd3ZaejQ4Y0dGMGFDQmtQU0pOSURReU1DQTJOVEFnVENBME5EUWdOVGt3SUV3Z05UUXdJRFU1TUNCTUlEVXhOaUEyTlRBZ1dpSWdabWxzYkQwaUkyWm1abVptWmlJZ2MzUnliMnRsUFNJak1EQXdNREF3SWlCemRISnZhMlV0YldsMFpYSnNhVzFwZEQwaU1UQWlJSEJ2YVc1MFpYSXRaWFpsYm5SelBTSnViMjVsSWk4K1BHVnNiR2x3YzJVZ1kzZzlJalF6TUNJZ1kzazlJalF3SWlCeWVEMGlOakFpSUhKNVBTSTBNQ0lnWm1sc2JEMGlJMlptWm1abVppSWdjM1J5YjJ0bFBTSWpNREF3TURBd0lpQndiMmx1ZEdWeUxXVjJaVzUwY3owaWJtOXVaU0l2UGp3dlp6NDhMM04yWno0PQ==","updateTime":1629285847314,"uuid":"42a9dc40-96ba-4d16-86dd-8563326a2242"}
Application Cache Error event: Manifest fetch failed (404)



errorLoadingFile=加载文件出错


=========================部署====================================
中没有主清单属性
java -jar huajun-drawio-3.0.0-2108191615.jar

java -jar huajun-drawio-1.0.jar


spring boot gradle jar
HuajunDrawioApplication
com.mxgraph.server.HuajunDrawioApplication.main

Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/boot/SpringApplication

Caused by: java.lang.ClassNotFoundException: org.springframework.boot.SpringApplication
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 1 more
        
https://stackoverflow.com/questions/58810438/gradle-spring-boot-error-java-lang-classnotfoundexception-org-springframework
https://stackoverflow.com/questions/58810438/gradle-spring-boot-error-java-lang-classnotfoundexception-org-springframework

        


部署
diagrams.net
https://os.51cto.com/art/202004/615447.htm
https://github.com/tobyqin/drawio-local
https://gitee.com/twobear/drawio-webapp
https://www.lefer.cn/posts/16902/
https://blog.csdn.net/mathcoder23/article/details/118763696
https://blog.csdn.net/mathcoder23/article/details/118763696  部署重要
托管静态Html到OSS
1.由于html的静态化,我们需要先修改静态代码指向的Drawio私有云后端服务地址
编辑html/admin/config.js

将window.baseUrl = '/api'更改为后端地址,http://ip:8080/api这里的ip是公网ip,注意后面不要加斜杠

这里的http://ip:8080/api也可以改为//ip:8080/api,跟随前端协议变化而变化,但是需要自行配置https
https://github.com/othorizon/drawio-webdav
https://github.com/jgraph/drawio
https://gitee.com/twobear/projects



npm install
npm  run dev


http://localhost:8086/admin/login.html

http://localhost:8086/index.html

http://localhost:8086/js/diagramly/Init.js


http://localhost:8086/index.html?ownerId=publicUser&uuid=52a9dc40-96ba-4d16-86dd-8563326a224b#LNewDrawioFile.xml
 


后台api地址
http://localhost:8083
http://localhost:8083/index-dev.html


https://blog.csdn.net/fm0517/article/details/117560735
https://blog.csdn.net/qq_36202485/article/details/103406256
https://www.codenong.com/cs106012044/
https://www.bilibili.com/read/cv6514509
https://www.cxyzjd.com/article/FesonX/103344938



http://devhost.jgraph.com/drawio/src/main/webapp/js/diagramly/Init.js
http://localhost:8083/js/diagramly/Init.js

http://devhost.jgraph.com/mxgraph2/javascript/examples/grapheditor/www/js/Init.js
http://localhost:8083/js/mxgraph/Init.js

http://devhost.jgraph.com/mxgraph2/javascript/src/js/mxClient.js

http://devhost.jgraph.com/drawio/src/main/webapp/js/diagramly/Devel.js
http://localhost:8083/js/diagramly/Devel.js

========================================================================================

http://localhost:8086/index.html?ownerId=publicUser&uuid=52a9dc40-96ba-4d16-86dd-8563326a224b#LNewDrawioFile.xml






huajun-drawio

 

这篇关于drawio www.diagrams.net 画图应用程序开发过程资料汇总的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!