首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在URI中转换字符串

如何在URI中转换字符串
EN

Stack Overflow用户
提问于 2018-04-02 20:09:03
回答 1查看 263关注 0票数 1

我设置了OpenSips 2.3代理服务器,因此任何调用都会出现在服务器上,我的脚本从DB获取sip uri,并将调用转发到该URI。当我获得值时,我使用AVP来获取值并将其保存在$avp(didnumber)中,如果我使用重写并手动指定uri,则它正在工作,但是当我从DB获取这个值并将其赋值时,它并不在rewriteuri()方法中工作。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ru = "sip:"+$avp(didnumber)

如果我写

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
rewriteuri("[$ru]")

它抛出以下错误

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ERROR:core:parse_sip_msg_uri: bad uri <[$ru>
ERROR:tm:new_t: uri invalid
ERROR:tm:t_newtran: new_t failed

我认为这个方法不接受普通变量,所以我增加了引号使它成为字符串变量,现在它在日志上显示得很好,但似乎我不得不使用AVP或转换来转换变量,我尝试了很多语法,但仍然做不到。请建议一下。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-02 21:51:51

有人反对rewrite_uri()只使用$ru。您的R已经被以下语句完全重写:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ru = "sip:" + $avp(didnumber);

但是,请注意,上面的内容是不正确的,因为根据SIP RFC 3261,您没有向uri提供“主机端口”部分:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SIP-URI          =  "sip:" [ userinfo ] hostport
                    uri-parameters [ headers ]

解析器可能会报告一个错误。对此有两个解决方案:

  • 要么只重写R "userinfo“部分,如下所示: $rU =$avp(教学编号);
  • 提供目标主机名: $ru = "sip:“+$avp(教学编号)+ "@”+$var(目的地);

接下来,您可以使用新的R进行t_relay()操作。

编辑: URI解析器实际上将容忍一个URI,如"sip:44776772882",但是它会将DID解释为主机名,因此如果脚本编写者试图将消息转发给无效的"44776772882“主机名,那么错误可能会在稍后出现。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49622113

复制
相关文章
如何在Python中将列表转换为字符串?
Python provides different variable type for programmers usage. We can use int, float, string, list, set … data types in our applications. While using different type of variables we may need to convert then to different types. In this tutorial we will different type of conversion from list to string in Python.
全栈程序员站长
2022/08/12
4.6K0
字符串转换整数python_将Python字符串转换为Int:如何在Python中将字符串转换为整数
Unlike many other programming languages out there, Python does not implicitly typecast integers (or floats) to strings when you concatenate them to strings.
用户7886150
2021/01/14
3.8K0
字符串转换整数python_将Python字符串转换为Int:如何在Python中将字符串转换为整数
Unlike many other programming languages out there, Python does not implicitly typecast integers (or floats) to strings when you concatenate them to strings.
用户7886150
2021/01/14
3.9K0
如何在 TypeScript 中将字符串转换为日期对象?
在应用程序中,我们经常需要将日期字符串转换为日期对象。在 TypeScript 中,由于类型系统的存在,这个过程可能需要一些额外的步骤。在本文中,我们将讨论如何在 TypeScript 中将字符串转换为日期对象,并解决在此过程中可能遇到的一些问题。
网络技术联盟站
2023/06/07
3.5K0
如何在 ClickHouse 中实现行列转换
当我们在进行数据分析时,时常会遇到行转列、列转行的查询需求。今天就来聊一聊如何在 CH 中实现这些查询。
Nauu
2020/06/29
14.4K0
如何在 Python 中反转字符串?
在 Python 中,字符串是 Unicode 字符的序列,尽管 Python 支持许多用于字符串操作的函数,但它没有明确设计用于反转字符串的内置函数或方法。
网络技术联盟站
2022/03/15
2.5K0
js中字符串转换为数字
js提供了parseInt()和parseFloat()两个转换函数。前者把值转换成整数,后者把值转换成浮点数。
用户7741497
2022/03/06
11.5K1
CA1054:URI 参数不应为字符串
类型声明一个方法,该方法具有名称中包含“uri”、“Uri”、“urn”、“Urn”、“url”或“Url”的字符串参数,且类型未声明采用 System.Uri 参数的相应重载。
呆呆
2022/01/10
5760
CA1056:URI 属性不应是字符串
类型声明名称包含“uri”、“Uri”、“urn”、“Urn”、“url”或“Url”的字符串属性。
呆呆
2022/02/22
5180
如何在 Bash 中抽取子字符串
本文介绍了如何在 Bash 中抽取子字符串,包括使用 IFS、cut 命令和编译自 Vivek Gite 的子字符串扩展方法。
企鹅号小编
2017/12/29
1.6K0
如何在 Bash 中抽取子字符串
python 中字符串大小写转换
    python中字符串的大小写转换和判断字符串大小写的函数小结: 一、pyhton字符串的大小写转换, 常用的有以下几种方法: 1、对字符串中所有字符(仅对字母有效)的大小写转换,有两个方法: print 'just to test it'.upper() #所有字母都转换成大写 JUST TO TEST IT print 'JUST TO TEST IT'.lower() #所有字母都转换成小写 just to test it 2、对字符串中的字符(仅对字母有
py3study
2020/01/06
1.3K0
excel中数字怎么转换为字符串
准备工具/材料:装有windows 10的电脑一台,Microsoft Office 家庭和学生版 2007 excel软件。
凯哥Java
2022/12/16
5.4K0
excel中数字怎么转换为字符串
python 数字转换字符串(python转换字符串)
字符串->数字: int(字符串) , float(字符串) 数字->字符串: str(数字)…
全栈程序员站长
2022/07/31
1.6K0
「译文」如何在YAML中输入多行字符串?
👉️URL: https://stackoverflow.com/questions/3790454/how-do-i-break-a-string-in-yaml-over-multiple-lines 📝Description: In YAML, I have a string that's very long. I want to keep this within the 80-column (or so) view of my editor, so I'd like to break the str
东风微鸣
2022/04/22
5.4K0
「译文」如何在YAML中输入多行字符串?
URI格式
The following figure displays two example URIs (foo://username:password@example.com:8042/over/there/
心跳包
2020/08/31
9650
【说站】python中str()函数转换字符串
如果只是想把Python的对象转换成文字串的话,str()函数是回到人类可读值的表示。
很酷的站长
2022/11/23
6910
【说站】python中str()函数转换字符串
python中如何把列表转换为字符串
语法格式为: str.join(sequence) sequence是序列类型,序列类型有列表、元组、range 如果列表中为int型,可使用map(,)
全栈程序员站长
2022/08/23
4.3K0
说说Python中字符串大小写转换?
公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助!
程序员小猿
2021/01/19
1.1K0
【DB笔试面试511】如何在Oracle中写操作系统文件,如写日志?
可以利用UTL_FILE包,但是,在此之前,要注意设置好UTL_FILE_DIR初始化参数。
AiDBA宝典
2019/09/30
29K0
【DB笔试面试511】如何在Oracle中写操作系统文件,如写日志?
点击加载更多

相似问题

将Uri转换为字符串,将字符串转换为Uri

52

如何在xaml中将字符串转换为Uri?

36

无法再次将Uri转换为字符串并将字符串转换为Uri

121

将字符串转换为Uri

896

将字符串转换为URI

51
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文