从主单元更改 TParseApi class 的 BaseURL

Changing BaseURL of TParseApi class from main unit

由于 Parse 已停止服务,我需要转向第三方托管的 Parse 推送通知解决方案(我想坚持使用 Parse 环境)。 TParseApi 使用的默认 BaseURL 定义为:

public const
  ...
  cDefaultBaseURL = 'https://api.parse.com/{ApiVersion}';

TParseApi class 中存在一个名为 BaseURL 的 public 属性,它在 TParseApi.Create() 中设置为 cDefaultBaseURL并且可以用它来设置用于 REST 调用的基础 URL。这需要更改为新托管服务器的地址,而不是旧的已停用的 Parse 服务地址。

在我的主要单元中,我只创建和使用 TPushEventsTParseProvider 对象。我想在运行时将 TParseApiBaseURL 属性 从我的主单元内更改为新地址,但我找不到访问 TParseApi 的方法来自我的主要单位的对象。我宁愿不更改 REST.Backend.ParseApi 单元中的常量值,因为我必须无限期地维护我自己的那个单元版本。

我正在使用 Delphi 10.1 Berlin。

谁能帮我弄清楚如何从我的主单元访问 TParseApi 对象,或者在主单元中创建一个我自己的替换 TParseApi 对象,然后让 TParseProvider/TPushEvents 改用我的?

尝试关注

type
  TMyPushEvents = class(TPushEvents)
  public
    property BackendService: IBackendPushDeviceService read GetBackendService;
  end;

procedure TForm1.Button1Click(Sender: TObject);
var
  LIntf: IGetParseAPI;
  LParseAPI: TParseAPI;
begin
  if Supports(TMyPushEvents(PushEvents1).BackendService, IGetParseAPI, LIntf) then
  begin
    LParseAPI := LIntf.ParseAPI;
    LParseAPI.BaseURL := 'http://new.url';
  end;
end;