azure-logic-apps - 在 Javascript 中用双引号嵌套替换字符串 - 第 2 部分
问题描述
在逻辑应用程序中,我有这个函数,它用零替换一些字符串的双双引号。如何在 Javascript 中复制它?
```javascript
replace(replace(replace(replace
(replace(body('HTTP_2'),'"PR_RENT":""','"PR_RENT":0'),
'"PR_ID":""','"PR_ID":0'),'"PR_USUM":""','"PR_USUM":0'),'"PR_LEAS":""','"PR_LEAS":0'),
'"PR_USER8":""','"PR_USER8":0')
```
这个问题已在 [here] 中得到解答(在 Javascript 中用双引号将字符串嵌套替换)。问题是这个解决方案需要一个集成帐户,这需要花费相当多的钱。没有集成帐户有没有办法做到这一点?
解决方案
除了javascript与集成账户的解决方案外,我们还可以在逻辑应用中添加azure函数,并在azure函数中编写js代码以满足您的要求。请参考以下步骤:
- 通过参考本教程在 azure 门户中创建一个 azure 函数应用程序。但是本教程是创建.net函数,我们需要创建nodejs函数,所以你应该选择“Node.js”作为“Runtime stack”。
消费计划可以帮我们省钱,可以参考这个教程了解azure函数的成本。
创建 azure 函数应用后,请转到您的函数应用并创建函数。请参阅下面的屏幕截图,并在下一步中选择“HTTP 触发器”。
然后我们回到逻辑应用,参照本教程创建“Azure Functions”连接器,选择刚才创建的 httptrigger 函数。
将您的 json 数据作为请求正文提供给 azure 函数操作。(我已将您的 json 数据存储为名为“data”的变量)。
整个输出的 json 数据如下所示:
{
"Payload": [
{
"RLS_GROUP": "",
"PR_SNAM": "700063",
"PR_OWN": "qqq",
"PR_REF": "",
"PR_NAME": "Bqqq12",
"PR_ADD1": "qqq",
"PR_ADD2": "INDUSTRIAL ESTATE",
"PR_ADD3": "23 INDUSTRIAL ESTATE",
"PR_ADD4": "yyy",
"PR_ADD5": "",
"PR_ADD6": "GB",
"PR_POST": "WQDQWD",
"PR_TEL": "23213",
"PR_TELX": "21312312",
"PR_FAX": "",
"PR_CONT": "",
"PR_NUNIT": "",
"PR_INT": "",
"PR_TENR": "LEASED",
"PR_QDAY": "",
"PR_CLSS": "",
"PR_DRCT": "Closing",
"PR_AGENT": "",
"PR_NOWN": "",
"PR_BOWN": "",
"PR_SOL": "",
"PR_HSTT": "",
"PR_HEND": "",
"PR_HAMT": "",
"PR_PFREQ": "",
"PR_NTENT": "",
"PR_NFLR": "",
"PR_GRA": "",
"PR_WATER": "",
"PR_RATVAL": "",
"PR_RTCT": "",
"PR_SCHG": "",
"PR_OCHG": "",
"PR_GFA": "",
"PR_ZONEA": "",
"PR_ZONEB": "",
"PR_ZONEC": "",
"PR_UPDATE": "",
"PR_UTIME": "",
"PR_UUSER": "",
"PR_HIST": "",
"PR_TAXYN": "",
"PR_TAX": "",
"PR_START": "",
"PR_END": "",
"PR_FREQ": "",
"PR_QTR": "",
"PR_NDUE": "",
"PR_TAXRUN": "",
"PR_OUTLET": "",
"PR_INLET": "",
"PR_VAL": "",
"PR_CST": "",
"PR_FRWA": "",
"PR_FRWB": "",
"PR_PRINT": "",
"PR_NL": "",
"PR_CURRS": "",
"PR_NEXTS": "",
"PR_VAT": "D",
"PR_USER": "",
"PR_VQDAY": "",
"PR_OBS1": "STANDARD NORTH",
"PR_TYPE": "Property",
"PR_VATDATE": "",
"PR_FUTHER": "",
"PR_RESTEN": "",
"PR_CAPGOODS": "",
"PR_INSEE": "",
"PR_CURR": "",
"PR_AQDATE": "20190917",
"PR_USER1": "Office",
"PR_USER2": "Yes",
"PR_USER3": "",
"PR_USER4": "",
"PR_USER5": "20190917",
"PR_USER6": "",
"PR_USER7": "",
"PR_USER8": 0,
"PR_USER9": "",
"PR_USER10": "",
"PR_OBS2": "",
"PR_OBS3": "",
"PR_OBS4": "",
"PR_OBS5": "",
"PR_OBS6": "",
"PR_OBS7": "UK",
"PR_OBS8": "",
"PR_OBS9": "",
"PR_SOLD": "0",
"PR_DATESOLD": "20200917",
"PR_LAND": "",
"PR_LANDUM": "",
"PR_FREE": "",
"PR_ID": 0,
"PR_BTYP": "F",
"PR_LEAS": 0,
"PR_RENT": 0,
"PR_USUM": 0,
"PR_FBUI": 0,
"PR_DREN": "",
"PR_USRC": "",
"PR_RSRC": "",
"PR_LSRC": "",
"PR_ELSR": "",
"PR_EGRS": "",
"PR_PROR": "",
"PR_BSTA": "",
"PR_LNAM": "123123213",
"PR_SITE": "",
"PR_REGION": "",
"PR_DESC": ""
}
]
}
五个字段已替换为 0。
此解决方案的优点是消耗计划仅在您的功能运行时才收费。我认为它会比集成帐户便宜。
推荐阅读
- java - 如何在不重新启动的情况下更新 Spring Data Geode 连接中的密钥库(SSLContext)?
- blazor - 使用绑定时“对象引用未设置为对象的实例”
- python - Python/Pandas:如何像字典一样处理一列数据
- junit5 - Junit测试运行器是否用于junit5
- java - JAXB + OSGi 与 Java 11
- c# - 无法反序列化为 ac# 列表,使用 NewtonSoft 不返回数据
- python - 使用 Python 在 Instagram 中自动执行以下操作
- flutter - 如何让 Listview.builder 在 Flutter 中从当天开始
- python-3.x - 将图像转换为 RGB 值列表
- java - 从 EditText 中删除文本后搜索显示结果