日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【转】ABP源码分析三十七:ABP.Web.Api Script Proxy API

發(fā)布時間:2023/12/10 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【转】ABP源码分析三十七:ABP.Web.Api Script Proxy API 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

ABP提供Script Proxy WebApi為所有的Dynamic WebApi生成訪問這些WebApi的JQuery代理,AngularJs代理以及TypeScriptor代理。這些個代理就是javascript腳本,通過這些代理可以簡單的訪問Dynamic webApi。

如下實例演示一個最基本的應(yīng)用場景。首先通過Script Proxy WebApi獲取所有Dynamic WebApi的angular?代理。

?

假設(shè)你有一個ApplicationService如下,并且你為該ApplicationService創(chuàng)建了動態(tài)的WebApi

?

那么在ABP框架下,你可以使用如下簡單的Js完成WebApi的調(diào)用。


?

PlainTextFormatter:自定義的針對"text/plain"的媒體格式化器。服務(wù)器端通過WebApi返回給客戶端的Javascript腳本時所使用的媒體格式化器。

?

IScriptProxyGenerator:定義了一個generate方法用于生成訪問Dynamic WebApi的代理,所謂代理就是一段js代碼。

JQueryProxyGenerator:根據(jù)DynamicApiControllerInfo生成訪問Dynamic WebApi方法的JQuery代理。

JQueryActionScriptGenerator:根據(jù)DynamicApiControllerInfo,DynamicApiActionInfo生成訪問這個Dynamic WebApi 的特定Action方法的JQuery代理。

AngularProxyGenerator:根據(jù)DynamicApiControllerInfo生成訪問Dynamic WebApi方法的AngularJs代理。

AngularActionScriptWriter:根據(jù)DynamicApiControllerInfo,DynamicApiActionInfo生成訪問這個Dynamic WebApi 的特定Action方法的AngularJs代理。

?

TypeScriptController: 這個API為系統(tǒng)中所有的DynamicApiControllerInfo生成TypeScriptor代理。返回給客戶端的結(jié)果 是一段TypeScriptor腳本。由于TypeScriptor無法在瀏覽器中直接運行。所以作者此處的用意實在不明白。 個人猜測這些TypeScriptor腳本是為更近一步開發(fā)所準(zhǔn)備的。

?

?

AbpServiceProxiesController:這個就是向外提供JQuery代理,AngularJs代理腳本的webAPI了。其有兩個方法:get方法根據(jù)具體的某個controllerName返回該controller的代理。 getALL則返回所有DynamicAPI的代理。

?

ScriptProxyManager:單例對象,封裝了一個字典對象IDictionary<string, ScriptInfo> CachedScripts用于緩存生成的JQuery代理,AngularJs代理腳本。AbpServiceProxiesController通過調(diào)用ScriptProxyManager的方法生成代理腳本。

?

?

?

?

?

返回ABP源碼分析系列文章目錄

總結(jié)

以上是生活随笔為你收集整理的【转】ABP源码分析三十七:ABP.Web.Api Script Proxy API的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。