billyb
Members-
Content Count
29 -
Joined
-
Last visited
Everything posted by billyb
-
I have need to send files to a Delphi service. I am able to send the files, but have not figured out how to extract the multipart items when received. procedure TForm15.IdHTTPServer1CommandGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo); begin ARequestInfo.PostStream.Seek(0, soFromBeginning); Memo1.Lines.LoadFromStream(ARequestInfo.PostStream); end; Here is what I get when file is posted with a 2 other values added to the stream. What I need is a way to access each item. How do I ask for "type" and get back "OPRS" How do I ask for "ID" and get back "1234" How do I ask for "filename" and get back "test.pdf" How do I ask for actual file contents and save to memory stream to then write to disk ----------040224182640701 Content-Disposition: form-data; name="type" Content-Type: text/plain Content-Transfer-Encoding: quoted-printable OPRS ----------040224182640701 Content-Disposition: form-data; name="ID" Content-Type: text/plain Content-Transfer-Encoding: quoted-printable 1234 ----------040224182640701 Content-Disposition: form-data; name="file"; filename="test.PDF" Content-Type: application/pdf Content-Transfer-Encoding: binary %PDF-1.6 %âãÏÓ 290 0 obj << /Border [ 0 0 0 ] /Contents (þÿ
-
how to extract from tidhttpserver PostStrean
billyb replied to billyb's topic in Network, Cloud and Web
I found the issue with the empty stringlist. I forgot to do a seek(0,0). This is a lot more complicated then I expected. It appears I have to manually parse the dest stream to get the name and the contents as it contains both. Content-Disposition: form-data; name="file"; filename="test.PDF" Content-Type: application/pdf Content-Transfer-Encoding: binary %PDF-1.6 %âãÏÓ I saw that Remy posted a enhancement request back in 2017 to add mutlipart parsing. Sad it was not added. Bill B -
how to extract from tidhttpserver PostStrean
billyb replied to billyb's topic in Network, Cloud and Web
I added your code and the section where you create the DEST stream appears is not containing the value If I add sl:=tstringlist.Create; sl.LoadFromStream(dest); my stringlist is empty What would be great is a function you can call that returns a value for a name example GetPostStreamValue(aname:string,var avalue:String;,var astream):boolean where aname is the item name (Like "type") avalue = the value for the name (like "OPRS") astream = a memory stream you pass in that gets filled with the file contents when Content-Transfer-Encoding: binary case Decoder.PartType of mcptText, mcptAttachment: begin Dest := TMemoryStream.Create; try NewDecoder := Decoder.ReadBody(Dest, MsgEnd); try // use Dest as needed... sl:=tstringlist.Create; sl.LoadFromStream(dest); finally Decoder.Free; Decoder := NewDecoder; end; finally Dest.Free; end; end; -
I am upgrading to Delphi 11 and have a few components that reference BDERTL. Where can I find the BDE installer for delphi 11.
-
Setup is delphi 10.4.2 - xcode 13 - sdk 15 I was finaly able to get instruments to work on my IOS app. (Had to build using developer cert and profile not adHoc) Where I run my app, with Leaks this is what I see for a short timestamp. My question is are all these leaks? How do I relate this to my code? In several cases, the program is just sitting on a screen waiting for user input, but the leak list keep growing. There are no timers in my program. Leaked Object Count Address Size Responsible Library Responsible Frame Malloc 96 Bytes 1 0x285eeaca0 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285f16460 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285eeaee0 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285eed5c0 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 3 < multiple > 288 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285f164c0 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285f67360 96 Bytes CodeRouteTest 0x100f1221c Malloc 80 Bytes 1 0x281d28500 80 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285f161c0 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 2 < multiple > 192 Bytes CodeRouteTest 0x100f1221c IFMXTextPosition 1 0x2839d6290 16 Bytes CodeRouteTest 0x10104de08 Malloc 96 Bytes 1 0x285f16b80 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285ee8ea0 96 Bytes CodeRouteTest 0x100f1221c IFMXTextPosition 1 0x2839d5c90 16 Bytes CodeRouteTest 0x10104de08 Malloc 96 Bytes 1 0x285f16580 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285ee94a0 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285eeba20 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285eeb000 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285eef420 96 Bytes CodeRouteTest 0x100f1221c IFMXTextRange 1 0x2839d5170 16 Bytes CodeRouteTest 0x10104de08 Malloc 96 Bytes 1 0x285f66460 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285eec420 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 2 < multiple > 192 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285ee9020 96 Bytes CodeRouteTest 0x100f1221c Malloc 80 Bytes 1 0x281d284b0 80 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285ee8a80 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285eead00 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285ee2340 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285eed680 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285eead60 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285f163a0 96 Bytes CodeRouteTest 0x100f1221c Malloc 96 Bytes 1 0x285f16ac0 96 Bytes CodeRouteTest 0x100f1221c UICTFontDescriptor 1 0x285f17ae0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x285ee5200 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 80 Bytes 1 0x281d280f0 80 Bytes CodeRouteTest 0x100f1221c
- 12 replies
-
- ios
- instrument usage
-
(and 2 more)
Tagged with:
-
Finaly got a response on this issue from embarcadero, Created By: David Powell (11/11/2021 2:11 AM) | Last Modified By: David Powell (11/11/2021 2:11 AM) After speaking with development they are aware of a couple of reported memory leaks related to edit and memo controls on iOS/iPadOS. They are all related to IFMXTextRange and IFMXTextPosition. This has not been fixed in version 11. I had asked previously in anticipation that development would want that information. At this point there is no workaround to the issue. Development will have to address the problem in a future update or release. Make certain that you are a Watcher on both RSP-35955 and RSP-35620 so that you will be automatically notified if the status changes or if development posts additional information. Best Regards, - David Powell Support Manager - Developer Tools
- 12 replies
-
- ios
- instrument usage
-
(and 2 more)
Tagged with:
-
One of my customers updated to IOS 15 and cannot run our FMX app. When I checked the embarcadero web site it shows only support to IOS 14. Is there a way to suport IOS 15. I am running delphi 10.4 update 2. Does the new version of Delphi 11 support IOS 15? Bill
-
Added tab control to my test app and the leaks are much worse on entering text into any edit control on tab pages. Create QC report RSP-35955 I find it hard to believe that my test app has so many leaks Can anyone verify what I am seeing? Thank you Bill B
- 12 replies
-
- ios
- instrument usage
-
(and 2 more)
Tagged with:
-
OK, I built a single form test app (MEMLEAK) with 3 edit's and 1 memo on the form I set the memo control type to PLATFORM so that voice typing works. Here is leaks.. Leaked Object Count Address Size Responsible Library Responsible Frame IFMXTextRange 1 0x28072e770 16 Bytes memleak 0x1050701a4 IFMXTextPosition 1 0x28072e780 16 Bytes memleak 0x1050701a4 Malloc 48 Bytes 1 0x280b5db30 48 Bytes memleak 0x1051eb56c Malloc 80 Bytes 1 0x28267a0d0 80 Bytes memleak 0x104f3bd68 NSMutableDictionary 1 0x280543c00 32 Bytes memleak 0x1051eb56c UICTFontDescriptor 1 0x282178180 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 80 Bytes 1 0x28267a210 80 Bytes memleak 0x104f3bd68 UICTFontDescriptor 1 0x28217c540 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x282178420 96 Bytes memleak 0x1051eb56c IFMXTextPosition 1 0x28072e3f0 16 Bytes memleak 0x1050701a4 UICTFontDescriptor 1 0x2821784e0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 80 Bytes 1 0x28267a030 80 Bytes memleak 0x104f3bd68 IFMXTextPosition 1 0x28072c990 16 Bytes memleak 0x1050701a4 IFMXTextRange 1 0x28072e3d0 16 Bytes memleak 0x1050701a4 __NSFontExtraData 1 0x281003a00 64 Bytes UIFoundation __CTFontGetExtraData UICTFontDescriptor 1 0x2821633c0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x2821781e0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x282117540 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x28216a2e0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x2821668e0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 80 Bytes 1 0x28267a260 80 Bytes memleak 0x104f3bd68 UICTFont 1 0x10872ad70 544 Bytes memleak 0x1051eb56c UICTFontDescriptor 1 0x282169020 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] IFMXTextPosition 1 0x28072e6d0 16 Bytes memleak 0x1050701a4 IFMXTextPosition 1 0x28072e6f0 16 Bytes memleak 0x1050701a4 IFMXTextPosition 1 0x28072e600 16 Bytes memleak 0x1050701a4 I then ran again with memo control style set to STYLED. Leaked Object Count Address Size Responsible Library Responsible Frame UICTFontDescriptor 1 0x2814042a0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x2814062e0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x28140dfe0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x28140ca20 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] In both cases UICTFontDescriptor is showing as leading in UIFoundation But using Platform as control type on memo results in a lot of reported leaks. Any thoughts on this?
- 12 replies
-
- ios
- instrument usage
-
(and 2 more)
Tagged with:
-
Dalija, Thank you for the support. I tried to put a breakpoint on the Fend := nil; but it will not let me (shows x) I can put breakpoints on other code in my program. Not sure if this means anything... Module Load: CodeRouteTest. Has Debug Info. Base Address: $00000001043D8000. Process CodeRouteTest (1004) Module Load: dyld. No Debug Info. Base Address: $000000010A9AC000. Process CodeRouteTest (1004) I did try adding fend._release before fend.free and it crashes Exception Type: EXC_CRASH (SIGABRT) This is way outside my knowledge area. My program has lots of input text fields accross multiple form. Program runs for hrs before memory errors. Not sure where to go from here. But I will continue to review what you said and see if I can get a better understanding. Again thank you for you help. Bill B
- 12 replies
-
- ios
- instrument usage
-
(and 2 more)
Tagged with:
-
Dalija, I have really no understanding of IOS Objective C so I am not in a postion to review the code. Any suggestions on Code changes in "Macapi.ObjectiveC" I am happy to try. Is this the code you are referring to? I see FObjectID created, but not free'd in the destroy event. Also the {$IFDEF AUTOREFCOUNT} is never used as both defined and not defined statments to release are commented out. constructor TOCLocal.Create; var CType: PTypeInfo; Reg: TRegisteredDelphiClass; begin inherited; CType := PTypeInfo(Self.ClassType.ClassInfo); Reg := TRegisteredDelphiClass.RegisterClass(CType, GetObjectiveCClass); FObjectID := Reg.CreateObj(Self); {$IFDEF DEBUGUTILS} TDebugUtils.DebugPrint('oc.local.create', 'Created instance of ''%s'' ObjID = 0x%x', [Self.ClassName, IntPtr(FObjectID)]); {$ENDIF} if FObjectID = nil then raise EObjectiveC.CreateResFmt(@SErrorCreatingOCObject, [CType^.NameFld.ToString]); end; destructor TOCLocal.Destroy; begin {$IFDEF DEBUGUTILS} TDebugUtils.DebugPrint('oc.local.destroy', 'Destroying instance of ''%s'' ObjID = 0x%x', [Self.ClassName, IntPtr(FObjectID)]); {$ENDIF} {$IFDEF AUTOREFCOUNT} // objc_msgSend(FObjectID, sel_registerName('release')); {$ELSE AUTOREFCOUNT} // objc_msgSend(FObjectID, sel_registerName('autorelease')); {$ENDIF AUTOREFCOUNT} inherited Destroy; end;
- 12 replies
-
- ios
- instrument usage
-
(and 2 more)
Tagged with:
-
Dave, Your change made sense, I tried to look for other objects in a .destroy method that did not have a object.free. did not find any in fmx.platform.ios.pas that should be free'd I hate IOS.
- 12 replies
-
- ios
- instrument usage
-
(and 2 more)
Tagged with:
-
Dave, I modified FMX.Platform.iOS, added it to my uses but it does not appear to make any difference in the leaks. program CodeRouteTest; uses System.StartUpCopy, {$IF Defined(IOS) and Defined(CPUARM)} IdSSLOpenSSLHeaders_Static, {$ELSE} IdSSLOpenSSLHeaders, {$ENDIF } {$IF Defined(IOS)} uMachExt in '..\..\..\BASE\MOBILE\Common\uMachExt.pas', {$ENDIF} FMX.PLATFORM.IOS IN 'FMX.PLATFORM.IOS.PAS', FMX.Forms, destructor TFMXTextRange.Destroy; begin FStart.free; // added by bb FEnd.free; // added by bb FStart := nil; FEnd := nil; inherited; end; I still get the TextRange errors as well as othe FMX errors Leaked Object Count Address Size Responsible Library Responsible Frame IFMXTextPosition 1 0x282c1fb70 16 Bytes CodeRouteTest 0x100829e08 UICTFontDescriptor 1 0x280a69200 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x280b07a20 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 96 Bytes 1 0x280a5d860 96 Bytes CodeRouteTest 0x1006ee21c UICTFontDescriptor 5 < multiple > 480 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x2804671e0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 96 Bytes 4 < multiple > 384 Bytes CodeRouteTest 0x1006ee21c Malloc 96 Bytes 1 0x280b27780 96 Bytes CodeRouteTest 0x1006ee21c Malloc 96 Bytes 3 < multiple > 288 Bytes CodeRouteTest 0x1006ee21c Malloc 96 Bytes 1 0x280a4a520 96 Bytes CodeRouteTest 0x1006ee21c Malloc 96 Bytes 1 0x280b17420 96 Bytes CodeRouteTest 0x1006ee21c UICTFontDescriptor 1 0x280a41800 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 96 Bytes 1 0x280b272a0 96 Bytes CodeRouteTest 0x1006ee21c UICTFontDescriptor 1 0x280b1e8e0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 96 Bytes 4 < multiple > 384 Bytes CodeRouteTest 0x1006ee21c Malloc 80 Bytes 1 0x280dabca0 80 Bytes CodeRouteTest 0x1006ee21c UICTFontDescriptor 2 < multiple > 192 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 96 Bytes 3 < multiple > 288 Bytes CodeRouteTest 0x1006ee21c Malloc 96 Bytes 1 0x280ae0fc0 96 Bytes CodeRouteTest 0x1006ee21c Malloc 80 Bytes 3 < multiple > 240 Bytes CodeRouteTest 0x1006ee21c Malloc 80 Bytes 3 < multiple > 240 Bytes CodeRouteTest 0x1006ee21c Malloc 96 Bytes 1 0x280b535a0 96 Bytes CodeRouteTest 0x1006ee21c UICTFontDescriptor 1 0x28042a160 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 96 Bytes 3 < multiple > 288 Bytes CodeRouteTest 0x1006ee21c UICTFontDescriptor 1 0x280ab8840 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] IFMXTextRange 3 < multiple > 48 Bytes CodeRouteTest 0x100829e08 UICTFontDescriptor 1 0x284a6e4c0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 96 Bytes 4 < multiple > 384 Bytes CodeRouteTest 0x1006ee21c UICTFontDescriptor 1 0x280476f40 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 5 < multiple > 480 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x280440ae0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x2804293e0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] UICTFontDescriptor 1 0x28045cea0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 96 Bytes 1 0x280b52ca0 96 Bytes CodeRouteTest 0x1006ee21c Malloc 96 Bytes 5 < multiple > 480 Bytes CodeRouteTest 0x1006ee21c IFMXTextRange 1 0x282c1a140 16 Bytes CodeRouteTest 0x100829e08 Malloc 96 Bytes 3 < multiple > 288 Bytes CodeRouteTest 0x1006ee21c UICTFontDescriptor 3 < multiple > 288 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] Malloc 96 Bytes 1 0x280aad4a0 96 Bytes CodeRouteTest 0x1006ee21c IFMXTextPosition 1 0x282c1a230 16 Bytes CodeRouteTest 0x100829e08 UICTFontDescriptor 1 0x28041a9a0 96 Bytes UIFoundation -[UIFontDescriptor _swapWithFontAttributes:options:] IFMXTextPosition 1 0x282c05140 16 Bytes CodeRouteTest 0x100829e08 Malloc 96 Bytes 3 < multiple > 288 Bytes CodeRouteTest 0x1006ee21c
- 12 replies
-
- ios
- instrument usage
-
(and 2 more)
Tagged with:
-
Steve, this is not a component issue. this is the option to update local file cache when viewing the IOS sdk 14.5 Bill
-
OK, got it to compile, link and install my IOS Ipad app using Xcode 13.0 sdk 14.5 $(BDSPLATFORMSDKSDIR)\iPhoneOS14.5.sdk. App works correctly on IOS 14.8 and IOS 15. But when I tried to use "Update Local File Cache" option for the 14.5 SDK, I Get Directory does not exist: /Users/brianperconti/Desktop/Xcode 12.5.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/ Makes me believe I am not using latest files from my mac. Also the Users/name is wrong (Matches to older mac that I used before) Bill
-
Should have asked before, Can update to Xcode 13 and sill use Delphi 10.4 or do I have to also update to Delphi 11? Bill
-
I do not seem to be able to locate xcode 12.5.1 to download when I login as Apple developer or the app store. Xcode 12.4 does not allow me to copy .IPA files to Ipad with IOS 15. Will I be able to copy IPA files if I upgrade to 12.5.1? I only have delphi 10.4 and not ready to update to delphi 11 (Too many 3rd party components) I saw several links in google but not apple site links for 12.5.1 any recomendations? Bill B
-
Dave, I just got an email saying that when the customer tried to run our program they got an error telling him it needs to be updated to be compatible. When I asked it program ran after the error message i was told no. I have no further info. I am upgrading one of my ipads to IOS 15 to see what happens and will post the results. My program runs fine on IOS 14.8 Let me know how it goes with your update. Thank you Bill B
-
I am getting nowhere with an issue I thought might be a memory leak, but afer added code to get Low Memory warning event message it is not the case. After using the Home button to suspend my app and run another IOS app and wait several minutes, if it return to my app and do anything I get a Access Viollation at address 00000001015C6BB0 accessing address 000000000000001A8. The does not happen every time, but often. I understand that this an error trying to reference a nill pointer, It happens when I try to click a button or show a dialog or edit a field on the form. If I do the same suspend, but do not wait a few minutes, there is no error. In one case I was able to pick a value from a dropdown list, but program locked up after selection of value, My program has no timers running. App uses SQLLite with TfdQuery and TFdmemtable Do I need to do anything on IOS events AAppevent.aeWillBecomeInactive AAppevent.aeEnteredBackground Any suggestions on how to proceed. I am running IOS 10.4.6 ipad 7 gen delphi 10.4.2 sdk 13.6
-
I do not have option to find error address, this is Delphi FMX IOS app. What is strange is that if I suspend to run another app and then resume (sometimes I get the access violation, othertimes I do not) There does not appear to be any code that is run when my app is resumed by IOS. I am re-compiling in debug mode to see if I get more information when it access violates
-
I have a delphi app that appears to be crashing due to low memory. How do I define a routine to capture any low memory warnings sent by IOS? My app is running on IOS 10.4.6 on a 7gen ipad.
-
I have added the code and it works, thank you. Turns out I do not have a memory issue with the app. Bill B
-
I have a C# function for SHA256 hashing that I need to convert to Delphi function. I have tried converting it, but the hash values returned do not match the values the vendor says I should get public static string GenerateDigest() { var digest = ""; var bodyText = "{ your JSON payload }"; using (var sha256hash = SHA256.Create()) { byte[] payloadBytes = sha256hash .ComputeHash(Encoding.UTF8.GetBytes(bodyText)); digest = Convert.ToBase64String(payloadBytes); digest = "SHA-256=" + digest; } return digest; }
- 15 replies
-
Wow, Thank you all for your help on this. I have been told that since my account is a test account, I would have to have a signed contract (ie MONEY $$$) in order to get any support. I am turning this over to the customer so they can fight the battle with CyberSource. Cybersource only offiers a TEST and PROD enviroments and I need a development enviroment so I created a testing account, but cybersource will not allow my dev enviroment to be linked to the actual customers account which has a valid contract. Again, thank you everyone for your support.
- 15 replies
-
mvanrijnen, Thank you it would be a big help. I looked at the raw page in Cybesources test page and the page is full of for spaces. I tested using the raw data (Below) from right afer "body:" and still not matching digest hash result. Since Delphi is not a supported language, they offer no help. Resource: /pts/v2/payments/ Host: apitest.cybersource.com v-c-merchant-id: testmid Date: Fri, 14 Dec 2018 00:00:00 GMT secretKey: 0123k20MBbIB2t012345678993gHCIZsQKFpf7dR0hY= keyID: 01234567-0123-0123-0123-012345678912 Body: { "clientReferenceInformation": { "code": "TC50171_3" }, "processingInformation": { "commerceIndicator": "internet" }, "paymentInformation": { "card": { "number": "4111111111111111", "expirationMonth": "12", "expirationYear": "2031", "securityCode": "123" } }, "orderInformation": { "amountDetails": { "totalAmount": "102.21", "currency": "USD" }, "billTo": { "firstName": "John", "lastName": "Doe", "company": "Visa", "address1": "1 Market St", "address2": "Address 2", "locality": "san francisco", "administrativeArea": "CA", "postalCode": "94105", "country": "US", "email": "test@cybs.com", "phoneNumber": "4158880000" } } }
- 15 replies