Для абсолютного базового URL используйте это. Работает как с HTTP, так и с HTTPS.
new Uri(Request.Url, Url.Content("~"))
Вам не нужны никакие специальные трубы. Угловые 2 опционные поля необязательно. Вам просто нужно добавить? в вашем объекте
{{ (data | async)?.name }}
или
{{(name | async)?}}
Нет ничего плохого в принятом ответе выше. Но добавление | async?
становится затруднительным, когда нам нужно отобразить многие свойства объекта. более удобным решением является следующее:
<div *ngIf="data | async as localData">
<div> {{ localData.name }} </div>
<div> {{ localData.property1 }} </div>
<div> {{ localData.property2 }} </div>
</div>
Я думаю, что вы делаете это слишком сложно, и просто нужно сделать что-то вроде этого.
this.name =
this.stock.getStockData(this.ticker, http)
.then( val => val.Name )
и
<h2>{{name.Name | async}}</h2>