typhon小白 发表于 2024-8-4 11:04:37

在typhon里修改接口代码,编译后日志打印还是原接口

跪求大神解答{:5_100:}

源码:
function TOnlineOrderRecordServiceImpl.GetList(OrderNo, OrderStatus,
OrderTimeBegin, OrderTimeEnd, UserMobile, GoodsCodeOrName, DeliveryType,
ReceiverName: String; out Data: IJSONObject): IOkMsg;
var
APrefix,ATempStr,URL:String;
AOKMsg:IOkMsg;
AJson,rsp:IJSONObject;
begin

Data:=nil;
APrefix:='查询订单分页列表(POS)';
ATempStr:='GetList';
Result:=TOkMsg.Create(False,APrefix+'请求异常');

URL:='StoreCode=' + xt_URLEncode.ParamEncode(AppOption.Get(SYS_STORECODE).AsString) ;
if not OrderNo.IsEmpty then
    URL:=URL + '&OrderNo='+xt_URLEncode.ParamEncode(OrderNo);
if not OrderStatus.IsEmpty then
    URL:=URL + '&OrderStatus='+xt_URLEncode.ParamEncode(OrderStatus);
if not OrderTimeBegin.IsEmpty then
    URL:=URL + '&OrderTimeBegin='+xt_URLEncode.ParamEncode(OrderTimeBegin);
if not OrderTimeEnd.IsEmpty then
    URL:=URL + '&OrderTimeEnd='+xt_URLEncode.ParamEncode(OrderTimeEnd);
if not UserMobile.IsEmpty then
    URL:=URL + '&UserMobile='+xt_URLEncode.ParamEncode(UserMobile);
if not GoodsCodeOrName.IsEmpty then
    URL:=URL + '&GoodsCodeOrName='+xt_URLEncode.ParamEncode(GoodsCodeOrName);
if not DeliveryType.IsEmpty then
    URL:=URL + '&DeliveryType='+xt_URLEncode.ParamEncode(DeliveryType);
if not ReceiverName.IsEmpty then
    URL:=URL + '&ReceiveUserName='+xt_URLEncode.ParamEncode(ReceiverName);

URL:=URL+'&SkipCount=0'+
         '&MaxResultCount=50';

AJson:=TCMJSONObject.Create;

Messager.Debug('%s::%s请求URL...[%s]',);
AOKMsg:=self.doRequest(APrefix,'GET' ,'/str/api/StoreSaleOrder/GetPageListForPos?' + URL,AJson.ToJSONData,rsp);
if not AOKMsg.IsOK then
begin
    Result:=TOkMsg.Create(False,AOKMsg.GetMsg);
    exit;
end;

Result:=TOkMsg.Create(True,AOKMsg.GetMsg);
Data:=rsp.OfferJSONObject('data');

end;      


日志
TOnlineOrderRecordServiceImpl:GetList::查询订单分页列表(POS)请求URL...
TOnlineOrderRecordServiceImpl:--doRequest:/mall/api/Order/Pages/Pos?StoreCode=101001&OrderStatus=99&OrderTimeBegin=2024%2D07%2D04%2000%3A00%3A00&OrderTimeEnd=2024%2D08%2D04%2023%3A59%3A59&SkipCount=0&MaxResultCount=50req:{}   

FishC 发表于 2024-8-4 11:05:49

看起来你在 Typhon 中修改了 `GetList` 方法的代码,但是编译后日志打印的 URL 还是原来那个接口,真是让人着急得想要跪下来求助啊!别担心,我来了!

### 几个可能的原因和解决方案:

1. **编译引用问题**:
   确保你修改的是正确的源码,并且编译的项目确实是用这个修改后的源码。你可以尝试清理项目 (Clean) 再重新构建。

2. **不小心缓存了旧的版本**:
   一些 IDE 会缓存编译结果,确保你没有在使用老的可执行文件。完全删除生成目录下的所有文件,确保手工清除缓存后再编译。

3. **调试信息不一致**:
   检查一下是否输出的日志是在另一个地方产生的。按理说,日志应该与代码同步。但你知道的,有时候程序就喜欢捣乱。

4. **多线程或异步调用**:
   如果你的程序中涉及多线程或者异步调用,可能会在某个地方被调用到了旧的接口。仔细检查一下,确保每个请求都是调用的新代码。

5. **服务端有缓存**:
   如果你测试的代码与服务器交互较多,服务器端可能也有缓存。建议清空服务端的相关缓存或换台机器多试试。

6. **使用了 IDE 的 Debug 功能**:
   有时候调试模式会运行旧的版本,确保在真正的环境中运行,而不是在调试环境中。

7. **文件保存问题**:
   请确认你在进行编译之前已经保存了所有修改的源文件。有时我们以为我们保存了,但实际上没有……

### 开个玩笑:
就像你做了个精致的蛋糕,结果上桌的时候发现上面写着“生日快乐”而不是“祝你成功”,真是让人哭笑不得呀!

希望这些建议能帮到你,快去检查一下吧!如果还有问题,随时来找我,我们一起艰难求解!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 在typhon里修改接口代码,编译后日志打印还是原接口