Sinds kort ben ik begonnen met een implementatie van SOAP in mijn website voor het ophalen van gegevens van een leverancier. Nu heb ik al enig onderzoek gedaan van hoe ik dit moet invoeren als code. Daarbij heb ik de onderstaande code gegenereerd, echter krijg ik de volgende error code van de server terug:
HTTP/1.1 405 Method Not Allowed
Ik heb de volgende code:
Daarbij kreeg ik de volgende envelope van de leverancier aangeleverd om te gebruiken voor het connectie maken:
Daarbij zou ik de volgende response moeten krijgen:
HTTP/1.1 405 Method Not Allowed
Ik heb de volgende code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| <? require_once('lib/nusoap.php'); $klant= new nusoap_client("https://website/ws/external/partCatalog"); $antwoord = $klant->call("getSalesPartCatalog", array( 'sCustomerNo' => '*********', 'sInstance' => '*********', 'sSite' => '*********', 'sPassword' => '*********' )); /* parameters als associatieve array meegeven */ if (!$fout=$klant->getError()) { print_r($antwoord); } else { print("Fout : ".$fout); } echo '<h2>Response</h2><pre>' . htmlspecialchars($klant->response, ENT_QUOTES) . '</pre>'; ?> |
Daarbij kreeg ik de volgende envelope van de leverancier aangeleverd om te gebruiken voor het connectie maken:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| POST /ws/external/partCatalog/default.asmx HTTP/1.1 Host: website Content-Type: application/soap+xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"> <soap12:Header> <AuthHeaderUser xmlns="https://website/ws/external/partCatalog"> <sCustomerNo>string</sCustomerNo> <sInstance>string</sInstance> <sSite>string</sSite> <sPassword>string</sPassword> </AuthHeaderUser> </soap12:Header> <soap12:Body> <getSalesPartCatalog xmlns="https://website/ws/external/partCatalog" /> </soap12:Body> </soap12:Envelope> |
Daarbij zou ik de volgende response moeten krijgen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
| <?xml version="1.0" encoding="utf-8"?> <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"> <soap12:Body> <getSalesPartCatalogResponse xmlns="https://website/ws/external/partCatalog"> <getSalesPartCatalogResult> <SalesPart> <SalesPartID>int</SalesPartID> <SalesPartGUID>guid</SalesPartGUID> <PartID>int</PartID> <SalesPartNo>string</SalesPartNo> <CustomerSalesPartNo>string</CustomerSalesPartNo> <Site>string</Site> <Instance>string</Instance> <Description>string</Description> <PartNo>string</PartNo> <PurchasePartNo>string</PurchasePartNo> <EANCode>string</EANCode> <UnitCode>string</UnitCode> <CatalogType>string</CatalogType> <CatalogGroup>string</CatalogGroup> <Tax>double</Tax> <WeightGross>double</WeightGross> <WeightNet>double</WeightNet> <SalesOrderFlag>string</SalesOrderFlag> <Flag>int</Flag> <Taxable>boolean</Taxable> <CurrentlyOffer>boolean</CurrentlyOffer> <InventoryStandardPackage>int</InventoryStandardPackage> <InventoryVendorPartNo>string</InventoryVendorPartNo> <InventoryManufacturerPartNo>string</InventoryManufacturerPartNo> <InventoryTypeDesignationNo>string</InventoryTypeDesignationNo> <InventoryLevel>int</InventoryLevel> <ExpectedArrivalDate>dateTime</ExpectedArrivalDate> <UnitCostPrice>double</UnitCostPrice> <UnitListPrice>double</UnitListPrice> <UnitPrice>decimal</UnitPrice> <Pricelist>string</Pricelist> <Image>string</Image> <ModelCodeID>int</ModelCodeID> <DateCreated>dateTime</DateCreated> <RowVersion>dateTime</RowVersion> </SalesPart> </getSalesPartCatalogResult> </getSalesPartCatalogResponse> </soap12:Body> </soap12:Envelope> |